A transformação de Java em Modelo de Serviço utiliza a funcionalidade de comparação e fusão para determinar as diferenças entre o modelo de destino e o modelo temporário gerados pela transformação. Ao executar a transformação de Java em Modelo de Serviço, o editor de fusão exibe as diferenças entre os dois modelos. Na janela do editor de fusão, é possível selecionar as alterações que a transformação funde ao modelo de destino.
| Opção | Descrição |
|---|---|
| Utilizar uma configuração de transformação | Dependendo da visualização em que você estiver, conclua
uma das seguintes etapas:
|
| Executar a transformação a partir da visualização Project Explorer | Para executar a transformação a partir da visualização Project Explorer, execute as seguintes etapas:
|
| Execute a trabsformação a partir de um diagrama de classes no projeto Java | Para executar a transformação a partir de um diagrama de classes em um projeto Java, execute as seguintes etapa:
|
| Executar a transformação a partir da linha de comandos | Para executar uma
transformação a partir de uma linha de comandos, utilize a seguinte sintaxe:eclipse -data workspace-path -application com.ibm.xtools.transform.core.transformationRunner -transformConfigs "[-R]transformation-configuration-path1,[-R]transformation-configuration-path2,..." No parâmetro -transformConfigs, é necessário especificar o nome completo do caminho do espaço de trabalho e do arquivo de configuração, não o nome do caminho do sistema de arquivo, de uma ou mais configurações de transformação. A execução de uma transformação a partir de uma linha de comandos suprime todas as caixas de diálogo geradas pela transformação. Como um exemplo, uma configuração de transformação chamada MyConfig.tc está em um projeto chamado MyProject em um espaço de trabalho chamado MyWorkspace. Essa configuração de transformação especifica as informações de configuração para uma transformação chamada MyTransformation e para uma transformação reversa correspondente chamada MyReverseTransformation.
|
| Chamar a API da transformação | Para executar a transformação
como parte de um aplicativo, você pode chamar a API de transformação, como no
exemplo a seguir:IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path("/MyWorkspace/MyConfig.tc"));
try {
ITransformConfig config = TransformConfigUtil.loadConfiguration(file);
IStatus status = TransformController.getInstance().execute(config, null, false, null);
}
catch (IOException e) {
// O arquivo de configuração não pôde ser lido.
}
Você também pode carregar uma configuração
de transformação especificando uma URL, como no exemplo a seguir:
try {
URL url= new URL(platform:/plugin/myPluginID/myConfig.tc);
ITransformConfig config = TransformConfigUtil.loadConfiguration(url);
}
catch (MalformedURLException malURLEx) {
// Manipular exceção.
}
catch (IOException ioEx) {
// Manipular exceção.
}
Você pode especificar uma URL que utilize protocolos
diferentes, como nos exemplos a seguir:
|
| Executar uma configuração de transformação a partir de um script Ant | Para executar uma transformação de um script
Ant ou arquivo build.xml, complete as seguintes etapas:
<?xml version="1.0" encoding="UTF-8"?>
<project name="myProject" default="generate" basedir=".">
<target name="generate">
<echo>Executando a transformação 'myProject/myConfig.tc' ...</echo>
<com.ibm.xtools.transform.core.runTransformation transformConfig="myProject/myConfig.tc" reverse="false"/>
</target>
</project>
No arquivo build.xml, no elemento project, configure o atributo default igual ao valor que você especificou para o atributo name no elemento de destino. O atributo transformConfig deve especificar um caminho de espaço de trabalho válido. Para
tipos de transformação que suportam uma transformação inversa, para
executar uma transformação inversa, configure o atributo reverso para
true.
Nota: A
configuração de transformação deve implementar o Design Contract Management Protocol (DCMP) de
Modelagem Reconciliada.
Para executar um script Ant, clique com o botão direito do mouse no arquivo build.xml; em seguida, clique em . |