A transformação não atualiza ou refatora código além do escopo da origem ou do destino especificado na configuração de transformação. Se o código que estiver além do escopo de transformação contiver referências a elementos de modelo alterados, você deverá atualizar o código manualmente.
A tabela a seguir lista como a transformação manipula as alterações no código gerado anteriormente quando você reexecuta uma transformação, supondo que a tag @generated não seja removida.
| Elemento de Código | Alteração | Impacto no Código Gerado Anteriormente ao Reexecutar a
Transformação Nota: A menos que indicado
de outra maneira, presume-se que você tenha configurado a transformação para criar
relacionamentos de rastreio entre os elementos de origem e de destino.
|
|---|---|---|
| Classe ou interface não aninhada (inclui classes e interfaces mais altas) | Incluir implementação ou extensão | A implementação ou extensão incluída é removida. |
| Mover | Se você mover o arquivo Java™ para um projeto fora do escopo
da transformação, a transformação criará um arquivo Java no
local definido no modelo de origem. Se você mover a classe ou interface Java para um pacote diferente no projeto, a transformação moverá o arquivo Java de volta para o local original. A opção de sobrescrita do arquivo que você especifica na configuração de transformação determina se o arquivo Java gerado anteriormente é excluído. Se
a transformação não estiver configurada para criar relacionamentos de rastreio:
|
|
| Remover implementação ou extensão | A implementação ou extensão gerada anteriormente é restaurada. | |
| Renomear | A classe é refatorada para refletir o nome da classe no modelo UML | |
| Campo | Mover dentro do mesmo arquivo Java | O campo e seus métodos getters e setter,
se gerados, são restaurados para o local original definido pelo modelo. As alterações nos corpos dos métodos getter e setter gerados são preservadas. |
| Mover para um arquivo Java diferente | O campo e seus métodos getters e setter,
se gerados, serão excluídos do novo local, se o novo local for um arquivo Java gerado,
e regenerados no local original definido pelo modelo. As alterações nos corpos dos métodos getter e setter gerados não são preservadas. Se
a transformação não estiver configurada para criar relacionamentos de rastreio:
|
|
| Renomear | O campo e os métodos getter e setter associados são restaurados para o nome original definido pelo modelo. | |
| Instrução de importação | Incluir | A instrução de importação é mantida. |
| Método | Modificar tipo de retorno | O tipo de retorno gerado anteriormente é restaurado. |
| Modificar assinatura | O método e a assinatura gerados anteriormente
são restaurados. O método com a nova assinatura é removido. As alterações no corpo do método são preservadas. |
|
| Mover dentro do mesmo arquivo Java | O método é restaurado para o local original
definido pelo modelo. As alterações no corpo do método são preservadas. O método no novo local é removido. |
|
| Mover para um arquivo Java diferente | Se o novo local for um arquivo Java gerado,
o método será excluído do novo local e criado no local original.
Se o novo local for um arquivo Java não gerado, o método não será excluído
do novo local e será regenerado no local original
definido pelo modelo. As alterações no corpo do método não são preservadas. |
|
| Renomear | O método gerado anteriormente é restaurado. O método renomeado é removido. |
|
| Classe ou interface aninhada | Mover dentro do mesmo arquivo Java | Se o novo local for um arquivo Java gerado,
o elemento aninhado será restaurado para o local original definido pelo modelo. Todos os elementos serão representados no local original definido pelo modelo. As alterações nos elementos aninhados são preservadas. |
| Mover para um arquivo Java diferente | Se o novo local for um arquivo Java gerado,
os elementos aninhados e todos os elementos-filho serão excluídos do novo local. Todos os elementos serão representados no local original definido pelo modelo. As alterações nos elementos aninhados não são preservadas. |
|
| Classe ou interface aninhada | Renomear | A classe ou interface gerada anteriormente
é restaurada para o nome original definido pelo modelo. As alterações nos elementos aninhados são preservadas. Se a transformação não estiver configurada
para criar relacionamentos de rastreio:
|
| Qualificador | Modificado | O qualificador gerado anteriormente é restaurado utilizando os valores na propriedade Palavras-chave do elemento UML. |