Criando Ligações Customizadas para Transformações UML-para-WSDL

Você pode customizar as ligações existentes ou criar ligações que a transformação UML em WSDL utiliza para gerar artefatos WSDL.
Antes de Iniciar
O procedimento a seguir presume que você saiba como criar, testar e distribuir plug-ins e que esteja familiarizado com o Eclipse Plug-in Development Environment (PDE).

Você deve estar na perspectiva Modelagem.

Por Que e Quando Desempenhar Esta Tarefa
Para criar uma ligação customizada:
  1. Crie um projeto de plug-in no espaço de trabalho do Eclipse. Esse projeto de plug-in conterá a implementação da ligação customizada.
  2. No arquivo plugin.xml do plug-in, crie o seguinte ponto de extensão:
    <extension point="com.ibm.xtools.transform.core.transformationExtensions"></extension>
  3. No ponto de extensão, crie um elemento TransformationExtension que contenha as seguintes informações:
    <TransformationExtension version="7.0.0" 
    	name="Extensão de ligação MY-NEW-BINDING" 
    	enabled="true"  
    	targetTransformation="com.ibm.xtools.transform.uml2.wsdl.internal.Uml2WsdlTransform.RS" 
    	id="com.ibm.xtools.transform.uml2.wsdl.extension.MY-NEW-BINDING">
  4. No elemento TransformationExtension, crie uma propriedade que contenha as seguintes informações:
    <Property 
    	id="com.ibm.xtools.transform.uml2.wsdl.bindings.MY-NEW-BINDING" 
    	metatype="string" 
    	name="com.ibm.xtools.transform.uml2.wsdl.bindings" 
    	readonly="true" 
    	value="MY-NEW-BINDING"/>
  5. Na propriedade que você criou na etapa anterior, defina as seguintes regras:
    <RuleDefinition 
    	class="org.someuri.MyAddressExtensionRule" 
    	id="MyAddressExtensionRule" 
    	name="MyAddressExtensionRule"/>
    <RuleDefinition 
    	class="org.someuri.MyBindingExtensionRule" 
    	id="MyBindingExtensionRule" 
    	name="MyBindingExtensionRule"/>
    <RuleDefinition 
    	class="org.someuri.MyBindingOperationExtensionRule" 
    	id="MyBindingOperationExtensionRule" 
    	name="MyBindingOperationExtensionRule"/>
  6. No elemento TransformationExtension, crie os seguintes elementos ExtendTransform:
    <ExtendTransform 
    	targetTransform="AddressExtensionTransform"> 
    	<AddRule id="MyAddressExtensionRule"/>
    </ExtendTransform>
    <ExtendTransform 
    	targetTransform="BindingExtensionTransform">
    	<AddRule id="MyBindingExtensionRule"/>
    </ExtendTransform>
    <ExtendTransform 
    	targetTransform="BindingOperationExtensionTransform">
    	<AddRule id="MyBindingOperationExtensionRule"/>
    </ExtendTransform>
  7. Clique em Arquivo > Salvar. Na próxima vez em que você abrir o arquivo de configuração de transformação, a página Propriedades do editor de Configuração de Transformação exibirá a propriedade criada nas etapas 4 e 5.
  8. Para cada classe definida na etapa 5, crie a classe Java™ correspondente no plug-in que você criar na etapa 1. As classes Java criadas devem estender as classes abstratas correspondentes e implementar os métodos abstratos correspondentes no plug-in com.ibm.xtools.transforms.uml2.wsdl.utility. Considere o seguinte exemplo:
    • A classe org.someuri.MyAddressExtensionRule definida na etapa 5 deve estender a classe AbstractExtensionRule no plug-in com.ibm.xtools.transforms.uml2.wsdl.utility.
    • A org.someuri.MyBindingExtensionRule definida na etapa 5 deve estender o método AbstractBindingExtensionRule.
    • A classe org.someuri.MyBindingOperationExtensionRule definida na etapa 5 deve estender o método AbstractOperationExtensionRule.
Resultados
Na próxima vez em que você abrir o arquivo de configuração de transformação, a página Opções da WSDL exibirá a nova ligação. Agora você poderá especificar que a transformação UML-para-WSDL utilizará essa ligação customizada.

Feedback