Clase: Mongo::servidor::AppMetadata::Platform Privado

Hereda:
Objeto
  • Objeto
Mostrar todo
Definido en:
lib/servidor/app_metadata/platform.rb

Overview

Esta clase forma parte de una API privada. Evita usar esta clase si es posible, ya que puede ser eliminada o modificada en el futuro.

Implementa la lógica para construir el string de plataforma para el handshake.

Desde:

  • 2.0.0

Resumen de atributos de la instancia colapsar

Resumen del método de instancia colapsar

Detalles del constructor

#initialize(metadatos) ⇒ Platform

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Cree un nuevo objeto Platform, haciendo referencia al objeto de metadatos dado.

Parámetros:

  • metadata (Mongo::Server::AppMetadata)

    el objeto de metadatos a la que se hace referencia al construir la cadena de plataforma.

Desde:

  • 2.0.0



33
34
35
# Archivo 'lib/mongo/server/app_metadata/platform.rb', línea 33

def inicializar()
  @metadata = 
end

Detalles de los atributos de instancia

#metadatosMongo::Server::AppMetadata (solo lectura)

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve el objeto de metadatos de referencia al construir la string de la plataforma.

Devuelve:

Desde:

  • 2.0.0



27
28
29
# Archivo 'lib/mongo/server/app_metadata/platform.rb', línea 27

def 
  @metadata
end

Detalles del método de instancia

#default_platform_listarreglo<String>

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Crea y devuelve la lista de plataformas predeterminada, para usarla al crear la cadena de plataforma.

Devuelve:

  • (arreglo<String>)

    la lista de identificadores de plataforma

Desde:

  • 2.0.0



78
79
80
81
82
83
84
85
# Archivo 'lib/mongo/server/app_metadata/platform.rb', línea 78

def lista_de_plataformas_predeterminada
  [
    .Plataforma,
    *versiones_ruby,
    *Plataformas,
    RbConfig::CONFIG['compilar']
  ]
end

#java_versionString | nil

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve la versión del entorno Java actual o nulo si no se invoca con JRuby.

Devuelve:

  • (String | nil)

    la versión actual de Java

Desde:

  • 2.0.0



68
69
70
71
72
# Archivo 'lib/mongo/server/app_metadata/platform.rb', línea 68

def java_version
  return nulo a menos que jruby?

  java.lang.Sistema.get_property('java.version')
end

#jruby?true | false

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Consulta si el entorno de ejecución actual es JRuby o no.

Devuelve:

  • (true | false)

    si el entorno de ejecución es JRuby o no.

Desde:

  • 2.0.0



40
41
42
# Archivo 'lib/mongo/server/app_metadata/platform.rb', línea 40

def jruby?
  BSON::Entorno.jruby?
end

#plataformasarreglo<String>

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve la lista de identificadores de plataforma que identifican este entorno de ejecución.

Devuelve:

  • (arreglo<String>)

    la lista de identificadores de plataforma.

Desde:

  • 2.0.0



58
59
60
61
62
# Archivo 'lib/mongo/server/app_metadata/platform.rb', línea 58

def Plataformas
  [ RUBY_PLATFORM ].tocar hacer |Lista|
    Lista.push "JVM #{java_version}" si jruby?
  end
end

#propósitoString | nil

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve una sola letra que representa el propósito informado a los metadatos, o nulo si no se especificó ningún propósito.

Devuelve:

  • (String | nil)

    el código que representa el propósito

Desde:

  • 2.0.0



91
92
93
94
95
# Archivo 'lib/mongo/server/app_metadata/platform.rb', línea 91

def Propósito
  return nulo a menos que .Propósito

  .Propósito.to_s[0].mayúsculas
end

#ruby_versionsarreglo<String>

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve la lista de versiones de Ruby que identifican este runtime.

Devuelve:

  • (arreglo<String>)

    la lista de versiones de Ruby

Desde:

  • 2.0.0



47
48
49
50
51
52
53
# Archivo 'lib/mongo/server/app_metadata/platform.rb', línea 47

def versiones_ruby
  si jruby?
    [ "JRuby #{JRUBY_VERSION}", "como Ruby #{RUBY_VERSION}" ]
  else
    [ "Ruby #{RUBY_VERSION}" ]
  end
end

#to_sString

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Compila y devuelve la string de la plataforma concatenando valores relevantes.

Devuelve:

  • (string)

    la string de la plataforma

Desde:

  • 2.0.0



101
102
103
104
105
106
107
108
109
110
# Archivo 'lib/mongo/server/app_metadata/platform.rb', línea 101

def to_s
  primario = [ *lista_de_plataformas_predeterminada, Propósito ].compact.unirse(', ')
  Lista = [ primario ]

  .wrapping_libraries&.cada hacer |Biblioteca|
    Lista << (Biblioteca[:plataforma] || '')
  end

  Lista.unirse('|')
end