Propriedades Predefinidas para Transformações

Este conteúdo aplica-se à versão 7.5.4 ou posterior. Ao criar uma transformação, é possível ativar recursos ou configurar valores para propriedades definindo a propriedade correspondente no arquivo plugin.xml do plug-in que contém a transformação. Dependendo da frequência na qual os valores mudam, também é possível atualizar propriedades no contexto de transformação usando a transformação application programming interface (API).
O núcleo da transformação define várias propriedades. É possível criar e configurar o valor para uma propriedade das seguintes maneiras:
  • No arquivo plugin.xml do projeto que contém a transformação, é possível incluir a propriedade e definir seus valores conforme descrito na tabela no final desse tópico.

    É possível usar esse método se o valor da propriedade não mudar com frequência.

    Para algumas propriedades, você cria um elemento <Property> no elemento <Transformation>; para outros, você inclui a propriedade como uma atributo no elemento <Transformation>. Consulte a tabela a seguir para obter informações adicionais.

    O fragmento de código a seguir mostra como incluir uma propriedade denominada myProperty criando um elemento <Property> no elemento <Transformation>:
    <Transformation
    	groupPath="myExampleTransformation"
    	id="myExampleTransformation.transformation"
    	name="Transformation"
    	sourceModelType="UML2"
    	targetModelType="resource"
    	version="1.0.0"/>
    	<Property
    		readonly="true"
    		metatype="boolean"
    		name="myProperty"
    		value="true"
    		id="myProperty">
    	</Property>
    </Transformation>

    Você deve especificar um valor para o atributo name. O valor que você especifica deve ser descritivo o suficiente para que o propósito do atributo seja óbvio as usuários. Por exemplo, se o identificador, ou atributo id da propriedade estiver definido para my.transformation.myApp.myTransformation.mergeOption, você pode definir o atributo name para "Merge Option".

  • No código de origem de uma transformação, dentro de um elemento de transformação como uma regra, extrator, ou transformação, é possível incluir código que invoque os métodos da interfacecom.ibm.xtools.transform.core.ITransformContext.

    É possível usar esse método se o valor de uma propriedade mudar frequentemente.

    Para obter informações adicionais sobre essa interface e uma descrição do contexto da transformação, consulte oRational Transformation Developer Guide.

Definir o valor de uma propriedade booleana para false é equivalente a omitir essa propriedade do arquivo plugin.xml.

A tabela a seguir lista as propriedades predefinidas que você pode atualizar para uma transformação. Como um autor de transformação, também é possível criar propriedades customizadas para uma transformação; consulte o tópico da tarefa relacionada no final desse tópico.

ID da propriedade Características Descrição Localização
createSourceToTargetRelationships Metatipo: booleano

Valor: por padrão, o valor dessa propriedade é definida para true

Somente leitura: false

Essa propriedade especifica que a transformação suporta a criação de relacionamentos de rastreio a partir dos elementos de origem para os elementos de destino.

Defina essa propriedade para true para exibir uma caixa de opção na páginaPrincipal doeditor de configuração de transformação. Um usuário de transformação seleciona essa caixa de opção para especificar que essa instância da transformação cria relacionamentos de rastreio.

No arquivo plug-in.xml da transformação, crie um elemento <Property> em um elemento <Transformation>, conforme mostrado no fragmento de código no início desse tópico.
MAIN_TAB_CSHELP Metatipo: Cadeia

Valor: o identificador (ID) do plug-in que contribui para que a página de configuração se integre na página Principal do editor de configuração de transformação, seguido pelo ID de contexto da ajuda contextual, como no exemplo a seguir: com.myCompany.myTransformation.cshelpID

Somente leitura: true

Essa propriedade especifica as informações que o núcleo da transformação usa para exibir a ajuda contextual para páginas que estão integradas na página Principal do editor de configuração de transformação.

Para fornecer ajuda contextual para uma página de configuração que esteja integrada na página Principal, um autor de transformação deve definir o valor dessa propriedade.

PROGRESS_MONITOR_INCREMENT Metatipo: Número inteiro positivo

Valor: Definido pelo autor da transformação

Somente leitura: Consulte a descrição na coluna Local.

Essa propriedade especifica o número de unidades de trabalho para incrementar a barra de progresso da janela de progresso. Se o valor dessa propriedade não mudar quando a transformação executar, é possível especificar essa propriedade e seu valor no arquivo plugin.xml do projeto que contém a transformação, e definir seu atributo readonly para true.

Se o valor dessa propriedade mudar frequentemente quando uma transformação executar, é possível especificar e atualizar seu valor invocando o método setPropertyValue na interface com.ibm.xtools.transform.core.ITransformContext. Consulte as informações na coluna Local da propriedade PROGRESS_MONITOR_TASK_NAME. Se você usar esse método para atualizar a propriedade, não é necessário especificá-la no arquivo plugin.xml.

PROGRESS_MONITOR_TASK_NAME Metatipo: Cadeia

Valor: Definido pelo autor da transformação

Somente leitura: false

Essa propriedade especifica o texto que é exibido abaixo da barra de progresso na janela de progresso.

O valor que você especifica deve ser descritivo o suficiente para que o propósito do atributo seja óbvio as usuários, como no seguinte exemplo: "Processando classes no modelo de origem".

Um elemento de transformação como um regra, extrator, ou transformação define essa variável de contexto antes que a transformação execute uma instância da regra com.ibm.xtools.transform.core.UpdateProgressMonitorRule, no seguinte exemplo:
private AbstractTransform createClassTransform(ITransformationDescriptor desc) {
	Transform classTransform = new Transform(desc);
	// Incluir os elementos da transformação que lêem as classes de origem.
	// Um desses elementos deve definir a seguinte conversão
	// variáveis de contexto por meio da invocação do método setPropertyValue na interface
com.ibm.xtools.transform.core.ITransformContext:
	// -PROGRESS_MONITOR_INCREMENT 
	// -PROGRESS_MONITOR_TASK_NAME
	
	// Incluir a regra para atualizar o monitor de progresso.
	classTransform.add(new UpdateProgressMonitorRule("myRuleId", "myRuleName"));
	return classTransform;
} 
PROGRESS_MONITOR_WORK_UNITS Metatipo: Número inteiro positivo

Valor: Definido pelo autor da transformação

Somente leitura: true

Essa propriedade especifica que a transformação e não o núcleo da transformação, atualiza a barra de progresso na janela de progresso enquanto a transformação executa. O valor dessa propriedade indica o número de unidades de trabalho na transformação.
Para determinar um valor para essa propriedade, você deve usar um dos seguintes métodos:
  • Determinar o número de arquivos que a transformação gera, e em vários locais no código de transformação, atualizar a barra de progresso com o número de unidades de trabalho dividido pelo número de arquivos que a transformação gerou.
  • Selecione um número inteiro positivo, e aloque algumas unidades de trabalho para analisar a origem da transformação, e as unidades de trabalho restantes para gerar os artefatos de destino. Quando cada tarefa estiver concluída, atualize a barra de progresso com a porcentagem de unidades de trabalho concluídas.

Para obter mais informações sobre a atualização da barra de progresso, consulte o tópico da tarefa relacionada no final deste tópico.

No arquivo plug-in.xml da transformação, crie um elemento <Property> em um elemento <Transformation>, conforme mostrado no fragmento de código no início desse tópico.
replaceUML Metatipo: booleano

Valor: por padrão, essa propriedade é configurada para true

Somente leitura: true

Essa propriedade especifica se a transformação suporta o utilitário denominado "Substituir elementos UML."

Defina essa propriedade para true para exibir o protocoloModelagem Combinada como uma opção noeditor ou assistente de configuração de transformação.

supportsSilentMode Essa propriedade especifica se a transformação pode executar em modo silencioso, o que significa que quando a transformação executa, o usuário da transformação não é solicitado a dar informações que afetam sua saída.

Defina essa propriedade para true para exibir uma caixa de opção na páginaPrincipal do editor de configuração de transformação. Um usuário de transformação seleciona essa caixa de opção para executar a transformação em modo silencioso.

Inclua essas propriedades em um elemento <Transformation> no arquivo plugin.xml, conforme no exemplo a seguir:
<Transformation
	...
	supportsSilentMode="true"
	supportsSourceOverride="false"
	targetModelType="resource"
	version="1.0.0/>
	...
</Transformation>
supportsSourceOverride Essa propriedade especifica se a transformação suporta a substituição da origem da transformação que um usuário especifica em uma configuração de transformação.

Defina essa propriedade para true para ativar menus pop-up que fornecem opções adicionais para executar essa instância da transformação. Se um usuário de transformação substituir a origem da transformação dando um clique com o botão direito do mouse no objeto que representa a origem da transformação na visualização Explorador de Projeto ou em um diagrama UML, o ambiente de trabalho Eclipse exibe os menus pop-up.

usesMapping Essa propriedade especifica se a transformação usa o utilitário de mapeamento de transformação.

Defina essa propriedade para true para exibir a página Mapeamento no editor de configuração de transformação. Ao exibir essa página, os usuários da transformação podem criar e editar modelos de mapeamento.

No arquivo plug-in.xml da transformação, crie um elemento <Property> em um elemento <Transformation>, conforme mostrado no fragmento de código no início desse tópico.
usesReporting Essa propriedade especifica se os relatórios de transformação são emitidos no log de erros usando a ferramenta de relatório.
Defina essa propriedade para true para exibir as seguintes opções na páginaPrincipal do editor de configuração de transformação:
  • Abrir a caixa de diálogo Relatório quando a transformação estiver concluída
  • Mostrar avisos na caixa de diálogo Relatório
A primeira opção especifica se a transformação abre uma janela que exibe os problemas que ocorreram quando a transformação executou. A segunda opção especifica se a transformação mostra avisos na caixa de diálogo Relatório; por padrão a janela exibe somente erros.

Feedback