Uma configuração de transformação possui .tc como uma extensão de nome de arquivo e contém as informações que a transformação utiliza para gerar a saída esperada. Uma configuração de transformação também contém informações específicas para um determinado tipo de transformação. Para editar uma configuração de transformação existente, em uma visualização que mostra os recursos da área de trabalho, dê um clique duplo no arquivo de configuração da transformação, que abre o editor de configuração de transformação.
Para simplificar o trabalho com o arquivo de configuração de transformação, salve o arquivo de configuração no projeto que contém os elementos para transformar.
Esta opção modifica a mesma propriedade de transformação que a opção Gerar métodos getter e setter na transformação reversa. Se você selecionar uma das caixas de opções, será o equivalente a desmarcar a outra. Desmarque essa caixa de opção se quiser gerar getters e setters Java ao executar a transformação reversa, mas não quiser exibir as operações UML para getters e setters Java no modelo UML de destino ao executar a transformação de encaminhamento.
Se o destino de transformação for um modelo UML existente, você deve especificar a mesma estrutura de pacote que o modelo de destino; isso reduz o número de diferenças que você deve resolver entre o modelo de destino e o modelo temporário gerados pela transformação.
Por exemplo, suponhamos que um projeto Java de origem contenha as classes a.b.Y e a.b.c.Z. Se você selecionar a caixa de opção, a transformação gera pacotes UML a.b e a.b.c. Esses pacotes não são hieráquicos. A classe UML Y é criada no pacote UML a.b, e a classe UML Z é criada no pacote UML a.b.c. Se você desmarcar essa caixa de opção, o pacote UML a é criado; o pacote UML b é criado no pacote a; o pacote UML c é criado no pacote b; uma classe UML Z é criada no pacote c; e a classe UML Y é criada no pacote b.
O arquivo de log fornece informações sobre os elementos de origem, os elementos de destino e as regras que a transformação aplica para transformar os elementos de origem. Se a transformação transformar vários elementos, poderá ocorrer uma redução no desempenho enquanto a transformação gerar o arquivo de log; portanto, você só deverá gerar um arquivo de log para propósitos de depuração.
A execução de uma transformação no modo silencioso suprime todas as caixas de diálogo geradas pela transformação. A transformação aplica regras e comportamento padrão, o que pode gerar uma saída de transformação inesperada ou incorreta. Você só deve executar uma transformação no modo silencioso para validar a execução da transformação, em vez de validar a saída da transformação. Por exemplo, você poderia executar uma transformação no modo silencioso como parte de um conjunto de tarefas automatizadas ou testes automatizados.
A configuração da transformação para executar em modo silencioso substitui as opções de substituição de arquivo que você especifica, e então sobrescreve os arquivos se necessário.
Se a transformação UML-para-Javaestiver disponível, é possível selecionar a caixa de opção Executar a transformação reversa silenciosamente. Especificar que a transformação de UML-para-Java ou reversa seja executada no modo silencioso substitui as opções para sobrescrever especificadas na configuração da transformação. A transformação de UML-para-Java sobrescreve arquivos, se necessário.
Você pode utilizar os relacionamentos de rastreio e as ferramentas de desenvolvimento visual para entender os relacionamentos entre os elementos de modelo de origem e a saída da transformação. Essa função é útil em projetos grandes que podem conter vários modelos e configurações de transformação. A transformação não altera o modelo de origem.
Para gerar enumerações de UML que preservam o nome e os valores dos literais de enumeração, selecione a caixa de opção com.ibm.xtools.transform.java.enumext.j2u.transform. As propriedades da enumeração Java customizada são preservadas quando ela é transformada em UML.
Para cada tipo de coleta Java no projeto de origem, é possível especificar o tipo de coleta UML que a transformação gera. Você pode mapear um tipo de coleta Java para um tipo de coleta UML. As seleções padrão mapeiam as classes de Coleta Java, de Conjunto Classificado, de Lista e de Conjunto para os tipos de coleta de Repositório de UML, de Conjunto Ordenado, Seqüência e Conjunto. Ao executar a transformação, se puder identificar as coletas ou matrizes Java no código e identificar o tipo de coletas ou matrizes, a transformação aplica o estereótipo «JavaCollection» ou «JavaArray» ao elemento UML gerado e preeche os valores das propriedades do estereótipo. Caso contrário, a transformação gera uma referência adaptável e não aplica um estereótipo ao elemento UML gerado.
Por exemplo, para transformar classes de vetor Java em seqüencias UML, selecione java.util.Vector na lista Sequência em vez de as classes de Lista Java. Para cada classe de Lista Java no projeto Java de origem, a transformação gera uma referência adaptável no modelo UML de destino e configura as propriedades É Ordenado e É Exclusivo do elemento UML gerado para falso. Neste exemplo, a transformação configura essas propriedades para falso, pois não transforma o tipo de coleta de Lista Java em um tipo de coleta UML.
Cnsulte o tópico de referência relacionado abaixo para obter informações adicionais sobre como a transformação preenche as propriedades de coleta UML quando transforma as coletas Java.
A transformação de Java em UML utiliza os modelos de mapeamento para determinar o nome apropriado para os elementos de UML gerados. Por exemplo, um modelo UML contém PackageA, e PackageA contém Class1. Ao criar um modelo de mapeamento para a transformação de UML-para-Java, você pode especificar que Class1 tem um nome de arquivo alternativo MappedClass1. Ao executar a transformaçãoUML-para-Java, ela gera arquivos Java denominados PackageA.MappedClass1.java. Ao executar a transformação de Java em UML, a transformação determina que o caminho UML original para o elemento Java é PackageA.Class1 e gera uma classe UML denominada Class1 em um pacote UML denominado PackageA.
Se o nome do arquivo de artefato especificado no modelo de mapeamento não for um nome de arquivo Java válido, então, a transformação modifica o nome do arquivo ao criar o elemento de código Java. Por exemplo, se o modelo de mapeamento especifica um nome de arquivo alternativo "Mapped Class1", en vez de MappedClass1, a transformação gera um arquivo Java denominado Mapped_Class1.java. A transformação não mantém um registro dessas publicações; portanto, a transformação de Java em UML não pode mapear o arquivo Mapped_Class1 para o elemento UML original. Neste exemplo, a transformação de Java em UML transforma o objeto de origem Mapped_Class1 Java em uma classe UML denominada Mapped_Class1, em vez de Class1.