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 as alterações no modelo UML de origem impactam o código gerado anteriormente quando você reexecuta uma transformação.
| Elemento de Modelo | Alteração | Impacto no Código Gerado Anteriormente ao Reexecutar a Transformação |
|---|---|---|
| Classe ou interface não aninhada (inclui classes ou interfaces mais altas) | Incluir | Um novo arquivo Java™ é criado. |
| Incluir implementação ou extensão | As cláusulas são regravadas ou incluídas. | |
| Mover | O arquivo Java original é movido para o novo local conforme
definido no modelo. O novo local deve estar dentro do escopo da transformação. |
|
| Remover implementação ou extensão | As cláusulas são regravadas ou removidas. | |
| Renomear | Todas as instâncias e referências à classe Java
no escopo da transformação são refatoradas. Se a transformação não estiver configurada para criar relacionamentos de rastreio, a classe gerada original será excluída e uma classe com o novo nome será criada. |
|
| Atributo | Mover dentro da hierarquia de uma classe UML única, incluindo a movimentação do atributo para/de uma classe aninhada | O campo Java é movido para o novo local. Os métodos getter e setter, se gerados, também são movidos. |
| Mover para uma nova hierarquia de classes UML | O campo original é excluído. Os métodos getter e setter,
se gerados, também são excluídos. Um campo é criado em um arquivo Java, que corresponde ao novo local na hierarquia. |
|
| Renomear | O campo é renomeado. Se a transformação não estiver configurada para criar relacionamentos de rastreio, o campo com o nome original será excluído e um campo com o novo nome será criado. |
|
| Operação | Modificar tipo de retorno | O tipo de retorno do método é atualizado. |
| Modificar assinatura | A assinatura de método é atualizada para refletir
a alteração no modelo As alterações no corpo do método são preservadas. |
|
| Mover dentro da hierarquia de uma classe UML única, incluindo a movimentação da operação para/de uma classe aninhada | O método é movido para o novo local. As alterações no corpo do método são preservadas. |
|
| Mover para uma hierarquia de classes UML diferente | O método original é excluído. Um novo método
com o mesmo nome é criado no arquivo Java gerado que representa o novo local
do método. As alterações no corpo do método não são preservadas. |
|
| Renomear | O método é renomeado. Se a transformação não estiver configurada para criar relacionamentos de rastreio, o campo com o nome original será excluído e um método com o novo nome será criado. As alterações no corpo do método são preservadas. |
|
| Classe ou interface aninhada | Mover dentro da hierarquia de uma classe UML única, incluindo a movimentação para/de uma classe aninhada | A classe ou interface aninhada é movida para o
novo local. Os elementos na classe ou interface aninhada são preservados. |
| Mover para uma nova hierarquia de classes UML | A classe ou interface gerada anteriormente
é removida. A nova classe ou interface é incluída. |
|
| Renomear | A classe ou interface aninhada é renomeada em
seu local existente. Os elementos aninhados são preservados. Se a transformação
não estiver configurada para criar relacionamentos de rastreio:
|