Compartilhar via


Cláusula INDEX

A cláusula INDEX especifica uma chave para selecionar uma linha exclusiva em uma coleção escalar ou de tabela. O Provedor SNMP é mapeado para um tipo diferente de classe CIM, dependendo do tipo de tabela que o dispositivo SNMP usa. Como uma chave pode ser mais de um tipo de objeto, o provedor usa regras de mapeamento diferentes dependendo do tipo de objeto dentro da chave. Para obter mais informações, consulte tipos de dados da cláusula INDEX.

Nota

Para obter mais informações sobre como instalar o provedor, consulte Configurando o ambiente do WMI SNMP.

 

Uma coleção escalar é mapeada para uma classe singleton CIM: ou seja, uma classe que pode ter apenas uma instância. Como não há necessidade de identificar exclusivamente uma instância de outra, uma classe singleton não designa uma ou mais propriedades como a chave. Classes geradas a partir de coleções escalares:

  • Não contiver qualificadores de propriedade key.
  • Contêm o qualificador de classe CIM padrão singleton, que é do tipo bool.

Uma coleção de tabelas é mapeada para uma classe CIM que pode ter mais de uma instância. Como resultado, a definição da classe CIM deve conter pelo menos uma propriedade que defina a chave de objeto; ou seja, uma propriedade que identifica exclusivamente uma instância da classe. A cláusula INDEX da macro OBJECT-TYPE de uma coleção de tabelas especifica o conjunto de propriedades de chave da coleção. As seguintes regras de mapeamento se aplicam:

  • O qualificador do CIM Key, tipo Bool, define uma propriedade de chave.

  • A ordenação das informações INDEX na coleção de tabelas define a ordenação das chaves dentro da definição da classe CIM.

    O qualificador de CIM Key_Order define a ordenação das chaves. Este qualificador é um valor inteiro de 32 bits sem sinal que, para fins da sintaxe do qualificador MOF, deve ser convertido em um valor inteiro de 32 bits assinado usando a operação de complemento de dois bits.

Atualmente, o mapeamento da cláusula SNMPv2C INDEX não manipula o uso do qualificador de IMPLICIT. Uma definição de classe CIM não é gerada nesse caso.

Tipos de dados da cláusula INDEX

Devido à flexibilidade da cláusula INDEX dentro da macro OBJECT-TYPE, a especificação de propriedades chaveadas não é simples. Em vez disso, você deve considerar as possibilidades de que a cláusula INDEX possa conter um ou mais dos seguintes tipos de dados:

  • Valor de indexobjeto de acessível internamente

    O valor indexobject é um valor nomeado que se refere a uma definição de objeto MIB que aparece na linha conceitual da mesma tabela que contém a cláusula INDEX. A definição de objeto MIB referenciada na cláusula INDEX é mapeada para uma propriedade de chave da definição da classe CIM.

  • Valor de indexobjeto de acessível externamente

    Nesse caso, indexobject é um valor nomeado que se refere a uma definição de objeto MIB que aparece na linha conceitual de uma tabela diferente.

  • Valor de de indexação de acessível

    O valor de indextype é um tipo nomeado que se refere a um dos seguintes tipos de dados: INTEGER, OCTET STRING, OBJECT IDENTIFIER, NetworkAddressou IpAddress. Se a cláusula INDEX contiver uma referência do tipo MIB, as seguintes regras de mapeamento se aplicarão:

    • O objeto MIB referenciado a mapas para uma propriedade de chave da definição da classe CIM. Sua sintaxe de tipo baseia-se no indextype valor especificado, que é mapeado para qualificadores de propriedade CIM usando a cláusula SYNTAX padrão procedimentos de mapeamento.
    • O processo de mapeamento gera um nome de propriedade exclusivo concatenando o descritor de objeto de tabela MIB, um sublinhado (_) e a ordem de classificação da cláusula INDEX indextype valor. Por exemplo, o nome da propriedade do terceiro componente de indexação da tabela MIB enterpriseIfTable é enterpriseIfTable_3.
    • A propriedade CIM é anotada com o qualificador de Virtual_Key. Este qualificador especifica que o Provedor SNMP deve calcular o valor da propriedade com base no superconjunto de informações de instância associadas a todas as definições de objeto MIB acessíveis na definição de classe.
    • A definição da classe CIM deve conter pelo menos uma propriedade que não tenha um qualificador de Virtual_Key associado; falha ao especificar essa propriedade invalida a definição de classe.
  • Subtipo de comprimento fixo

    Quando a cláusula INDEX de uma coleção de tabelas SNMP contém um tipo com suporte de SNMP que é subtipo como uma CADEIA DE CARACTERES OCTET de comprimento fixo, o qualificador de propriedade CIM Fixed_Length deve ser usado para especificar esse valor.