Gerenciando Modelos de Mapeamento em Transformações

Após a configuração de uma transformação para criar um modelo de mapeamento, você pode incluir código em uma classe Java™ na transformação para criar modelos de mapeamento, extrair informações de modelos de mapeamento e validar os parâmetros de mapeamento contidos no contexto de transformação.
Antes de Iniciar
O espaço de trabalho atual deve conter um plug-in do Eclipse contendo os seguintes itens: A transformação deve ser configurada para suportar a criação de modelos de mapeamento e o contexto de transformação deve conter os parâmetros de mapeamento. Normalmente, um usuário de transformação especifica os parâmetros de mapeamento na guia Mapeamento do editor de configuração de transformação.
Por Que e Quando Desempenhar Esta Tarefa
Os parâmetros de mapeamento no contexto de transformação determinam o modo de mapeamento. O modo de mapeamento especifica quais dessas ações do modelo de mapeamento, se houver, a transformação deve concluir:
  • Criar ou atualizar um modelo de mapeamento
  • Extrair nomes de objetos mapeados de um modelo de mapeamento

Para gerenciar modelos de mapeamento:

  1. Na visualização de navegação, em um projeto de transformação, abra o arquivo Java no qual você está incluindo métodos para determinar o modo de mapeamento.
  2. Para determinar o modo de mapeamento, chame os métodos da classe chamada com.ibm.xtools.transform.uml2.mapping.MappingModeUtility, como no seguinte exemplo:
    if (MappingModeUtility.isNoMappingMode(context)) {
    	// Executar a transformação com a funcionalidade do modelo de mapeamento desativada.
    }
    else if (MappingModeUtility.isAMappingModelWritingMode(context) {
    	// Criar ou atualizar um modelo de mapeamento.
    }
    else  if (MappingModeUtility.isUsesMappingMode(context) {
    	// Extrair nomes de objetos mapeados de um modelo de mapeamento.
    }
  3. Para concluir qualquer uma das ações da tabela a seguir, inclua as solicitações de método apropriadas no fragmento de código mostrado na etapa 2. Dependendo de como a transformação transforma os objetos de origem, é possível inserir código adicional entre essas chamadas de método.
    Ação Métodos a serem chamados
    Criar ou atualizar um modelo de mapeamento
    • initialize(ITransformContext)
    • populateMappingModel(List, ITransformContext) ou populateMappingModel(NamedElement, ITransformContext)
    • terminate(ITransformContext)
    Dica: Se o modelo de mapeamento tiver que gerar artefatos que sigam uma convenção de nomenclatura específica da plataforma, você poderá especificar essa convenção de nomenclatura na documentação de transformação: No arquivo de manifesto de plug-ins, o atributo document do elemento Transformation especifica o local da documentação de transformação.
    Extrair os nomes de objetos mapeados de um modelo de mapeamento
    • initialize(ITransformContext)
    • Uma ou mais chamadas de getFilename(NamedElement, ITransformContext, Character) ou getFilenameIgnoringParent(NamedElement, ITransformContext)
    • terminate(ITransformContext)
    Validar os parâmetros de mapeamento em um contexto de transformação No método na classe do provedor de transformação chamada validateContext(ITransformationDescriptor descriptor, ITransformContext context), chame o seguinte método: validateContext(ITransformContext)
  4. Clique em Arquivo > Salvar.
  5. Clique em Projeto > Construir Projeto.

Feedback