Classe: Mongo::Server::AppMetadata::Platform Private

Herda:
Objeto
  • Objeto
mostrar tudo
Definido em:
lib/mongo/ servidor/app_metadata/platform.rb

Visão geral

Esta classe faz parte de uma API privada. Evite usar essa classe, se possível, pois ela pode ser removida ou alterada no futuro.

Implementa a lógica para construir a string de plataforma para a negociação.

Desde:

  • 2.0.0

Colapsode resumo constante

ENGINE_NAMES =

Essa constante faz parte de uma API privada. Você deve evitar usar essa constante, se possível, pois ela pode ser removida ou alterada no futuro.

Desde:

  • 2.0.0

{ 'jruby' => 'JRuby', 'truffleruby' => 'TruffleRuby' }.congelar

Recolhimento do Resumo do atributo de instância

Recolhimento do Resumo do método de instância

Detalhes do construtor

#initialize(metadata) ➤ Platform

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Criar um novo objeto Platform , fazendo referência ao objeto de metadados fornecido .

Parâmetros:

Desde:

  • 2.0.0



33
34
35
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 33

def inicializar()
  @metadata = 
end

Detalhes do atributo da instância

#metadata ➤ Mongo::Server::AppMetadata (readonly)

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna o objeto de metadados para referência ao construir a string de plataforma.

Retorna:

Desde:

  • 2.0.0



27
28
29
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 27

def 
  @metadata
end

Detalhes do método de instância

#default_platform_listArray<String>

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Constrói e retorna a lista de plataformas padrão, para uso ao criar a string de plataforma.

Retorna:

  • (Array<String>)

    a lista de identificadores de plataforma

Desde:

  • 2.0.0



91
92
93
94
95
96
97
98
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 91

def default_platform_list
  [
    .Plataforma,
    *ruby_versions,
    *plataformas,
    RbConfig::Config['build']
  ]
end

#engine_nameObjeto

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Desde:

  • 2.0.0



53
54
55
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 53

def engine_name
  ENGINE_NAMES[RBY_ENGINE] || RBY_ENGINE
end

#java_versionString | nil

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna a versão do ambiente Java atual ou nulo se não for invocado com JRuby.

Retorna:

  • (string | nil)

    a versão atual do Java

Desde:

  • 2.0.0



81
82
83
84
85
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 81

def java_version
  Método nada a menos que jRuby?

  Java.idioma.Sistema.get_property('java.version')
end

#jruby?verdadeiro | false

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Consulta se o tempo de execução atual é JRuby ou não.

Retorna:

  • (verdadeiro | falso)

    se o tempo de execução é JRuby ou não.

Desde:

  • 2.0.0



47
48
49
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 47

def jRuby?
  RBY_ENGINE == 'jruby'
end

#mri?true | false

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Consulta se o tempo de execução atual é Ruby MRI ou não.

Retorna:

  • (verdadeiro | falso)

    se o tempo de execução é Ruby MRI ou não.

Desde:

  • 2.0.0



40
41
42
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 40

def mri?
  RBY_ENGINE == 'ruby'
end

#plataformasArray<String>

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna a lista de identificadores de plataforma que identificam este tempo de execução.

Retorna:

  • (Array<String>)

    a lista de identificadores de plataforma.

Desde:

  • 2.0.0



71
72
73
74
75
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 71

def plataformas
  [ RBY_PLATFORM ].toque fazer |Lista|
    Lista.push "JVM #{java_version}" se jRuby?
  end
end

#finalidadestring | nada

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna uma única letra que representa a finalidade relatada aos metadados ou nulo se nenhuma finalidade tiver sido especificada.

Retorna:

  • (string | nil)

    o código que representa a finalidade

Desde:

  • 2.0.0



104
105
106
107
108
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 104

def Propósito
  Método nada a menos que .Propósito

  .Propósito.to_s[0].upcase
end

#ruby_versions ➤ Array<String>

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna a lista de versões Ruby que identificam este tempo de execução.

Retorna:

  • (Array<String>)

    a lista de versões Ruby

Desde:

  • 2.0.0



60
61
62
63
64
65
66
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 60

def ruby_versions
  se mri?
    [ "Ruby #{RUBY_VERSION}" ]
  mais
    [ "#{engine_name} #{RUBY_ENGINE_VERSION}", "como Ruby #{RUBY_VERSION}" ]
  end
end

#to_s ➤ string

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Constrói e retorna a string da plataforma concatenando valores relevantes.

Retorna:

  • (string)

    a string da plataforma

Desde:

  • 2.0.0



114
115
116
117
118
119
120
121
122
123
# Arquivo 'lib/mongo/ servidor/app_metadata/platform.rb', linha 114

def to_s
  Principal = [ *default_platform_list, Propósito ].compactar.juntar(', ')
  Lista = [ Principal ]

  .wrap_libraries&.cada fazer |biblioteca|
    Lista << (biblioteca[:platform] || '')
  end

  Lista.juntar('|')
end