변환에 대한 사전 정의된 특성

이 컨텐츠는 버전 7.5.4 이상에 적용됩니다. 변환을 작성할 때 변환을 포함하는 플러그인의 plugin.xml 파일에서 해당 특성을 정의하여 특성 값을 설정하거나 기능을 사용하도록 설정할 수 있습니다. 값이 변경되는 빈도에 따라, 변환 API(Application Programming Interface)를 사용하여 변환 컨텍스트에서 특성을 갱신할 수도 있습니다.
변환 코어는 몇 개의 특성을 정의합니다. 다음 방식으로 특성을 작성하고 값을 설정할 수 있습니다.
  • 변환을 포함하는 프로젝트의 plugin.xml 파일에서 특성을 추가하고 이 주제의 끝에 있는 표에 설명된 대로 값을 설정할 수 있습니다.

    특성 값이 자주 변경되지 않는 경우에는 이 방법을 사용할 수 있습니다.

    일부 특성의 경우에는 <Transformation> 요소에서 <Property> 요소를 작성하고, 다른 특성의 경우에는 <Transformation> 요소에서 속성으로 특성을 추가합니다. 자세한 정보는 다음 표를 참조하십시오.

    다음 코드 단편은 <Transformation> 요소에서 <Property> 요소를 작성하여 myProperty 특성을 추가하는 방법을 보여 줍니다.
    <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>

    name 속성의 값을 지정해야 합니다. 지정하는 값은 속성의 목적이 사용자에게 명확하도록 충분히 설명하는 값이어야 합니다. 예를 들어, 특성의 ID 또는 id 속성이 my.transformation.myApp.myTransformation.mergeOption으로 설정되는 경우 name 속성을 "Merge Option"으로 설정할 수 있습니다.

  • 변환 소스 코드에 있는 변환 요소(예: 규칙, 추출기 또는 변환)에서 com.ibm.xtools.transform.core.ITransformContext 인터페이스의 메소드를 호출하는 코드를 추가할 수 있습니다.

    특성 값이 자주 변경되는 경우에는 이 방법을 사용할 수 있습니다.

    이 인터페이스에 대한 자세한 정보와 변환 컨텍스트 설명은 Rational® Transformation Developer Guide를 참조하십시오.

부울 특성 값을 false로 설정하는 것은 plugin.xml 파일에서 해당 특성을 생략하는 것과 같습니다.

다음 표는 변환에 대해 갱신할 수 있는 사전 정의된 특성을 나열합니다. 변환 작성자로서, 변환에 대한 사용자 정의 특성을 작성할 수도 있습니다. 이 주제 끝에 있는 관련 타스크 주제를 참조하십시오.

특성 ID 특성 설명 위치
createSourceToTargetRelationships 메타 유형: 부울

값: 기본적으로, 이 특성의 값은 true로 설정됩니다.

읽기 전용: false

이 특성은 변환이 소스 요소에서 대상 요소로의 추적 관계 작성 지원을 지정합니다.

변환 구성 편집기기본 페이지에 선택란을 표시하려면 이 특성을 true로 설정하십시오. 변환 사용자는 이 선택란을 선택하여 인스턴스가 추적 관계를 작성하도록 지정합니다.

변환의 plug-in.xml 파일에서, 이 주제의 맨 앞에 있는 코드 단편에 표시된 것처럼 <Transformation> 요소에서 <Property> 요소를 작성하십시오.
MAIN_TAB_CSHELP 메타 유형: 문자열

값: 변환 구성 편집기의 기본 페이지에 임베드하기 위해 구성 페이지를 컨트리뷰션하는 플러그인의 ID로, 뒤에는 컨텍스트 도움말의 컨텍스트 ID가 있습니다(예: com.myCompany.myTransformation.cshelpID).

읽기 전용: true

이 특성은 변환 코어가 변환 구성 편집기의 기본 페이지에서 임베드되는 페이지에 대한 컨텍스트 도움말을 표시하기 위해 사용하는 정보를 지정합니다.

기본 페이지에 임베드되는 구성 페이지에 대한 컨텍스트 도움말을 제공하려면 변환 작성자가 이 특성의 값을 설정해야 합니다.

PROGRESS_MONITOR_INCREMENT 메타 유형: 양의 정수

값: 변환 작성자에 의해 정의됨

읽기 전용: 위치 열에 있는 설명을 참조하십시오.

이 특성은 진행상태 창의 진행 표시줄을 증가시킬 작업 단위 수를 지정합니다. 변환이 실행될 때 이 특성의 값이 변경되지 않는 경우 변환을 포함하는 프로젝트의 plugin.xml 파일에서 이 특성과 해당 값을 지정하고 readonly 속성을 true로 설정할 수 있습니다.

변환이 실행될 때 이 특성의 값이 자주 변경되면, com.ibm.xtools.transform.core.ITransformContext 인터페이스에서 setPropertyValue 메소드를 호출하여 해당 값을 지정하고 갱신할 수 있습니다. PROGRESS_MONITOR_TASK_NAME 특성의 위치 열에 있는 정보를 참조하십시오. 이 메소드를 사용하여 특성을 갱신하는 경우 plugin.xml 파일에서 지정하지 않아도 됩니다.

PROGRESS_MONITOR_TASK_NAME 메타 유형: 문자열

값: 변환 작성자에 의해 정의됨

읽기 전용: false

이 특성은 진행상태 창에 있는 진행 표시줄 아래에 표시되는 텍스트를 지정합니다.

지정하는 값은 속성의 목적이 사용자에게 명확하도록 충분히 설명하는 값이어야 합니다(예: "Processing classes in the source model").

규칙, 추출기 또는 변환과 같은 변환 요소는 다음 예제와 같이 변환이 com.ibm.xtools.transform.core.UpdateProgressMonitorRule 규칙의 인스턴스를 실행하기 전에 이 컨텍스트 변수를 설정합니다.
private AbstractTransform createClassTransform(ITransformationDescriptor desc) {
	Transform classTransform = new Transform(desc);
	// Add the transform elements that read the source classes.
	// One of these elements must set the following transform
	// context variables by invoking the setPropertyValue method in the com.ibm.xtools.transform.core.ITransformContext interface:
	// -PROGRESS_MONITOR_INCREMENT 
	// -PROGRESS_MONITOR_TASK_NAME
	
	// Add the rule 이 파일을 갱신하거나 편집하려면 AMY LAIRD 또는 DAVID STEINMETZ에게 문의하십시오. the progress monitor.
	classTransform.add(new UpdateProgressMonitorRule("myRuleId", "myRuleName"));
	return classTransform;
} 
PROGRESS_MONITOR_WORK_UNITS 메타 유형: 양의 정수

값: 변환 작성자에 의해 정의됨

읽기 전용: true

이 특성은 변환(변환 코어는 아님)이 실행되는 동안 진행상태 창에서 진행 표시줄을 갱신함을 지정합니다. 이 특성의 값은 변환에서 작업 단위 수를 표시합니다.
이 특성에 대한 값을 판별하려면 다음 방법 중 하나를 사용할 수 있습니다.
  • 변환이 생성하는 파일 수를 판별하고, 변환 코드의 다양한 위치에서 변환이 생성한 파일 수로 나눈 작업 단위 수로 진행 표시줄을 갱신합니다.
  • 양의 정수를 선택하고, 일부 작업 단위는 변환 소스를 구문 분석하는 데 할당하고 나머지 작업 단위는 대상 아티팩트를 생성하는 데 할당합니다. 각각의 타스크가 완료되면, 진행 표시줄을 완료된 작업 단위의 백분율로 갱신합니다.

진행 표시줄 갱신에 대한 자세한 정보는 이 주제 끝에 있는 관련 타스크 주제를 참조하십시오.

변환의 plug-in.xml 파일에서, 이 주제의 맨 앞에 있는 코드 단편에 표시된 것처럼 <Transformation> 요소에서 <Property> 요소를 작성하십시오.
replaceUML 메타 유형: 부울

값: 기본적으로, 이 특성은 true로 설정됩니다.

읽기 전용: true

이 특성은 변환이 "UML 요소 바꾸기" 유틸리티를 지원하는지 여부를 지정합니다.

변환 구성 편집기 또는 마법사혼합 모델링 프로토콜을 옵션으로 표시하려면 이 특성을 true로 설정하십시오.

supportsSilentMode 이 특성은 변환이 자동 모드에서 실행될 수 있는지 여부를 지정합니다. 이는 변환이 실행될 때 변환 사용자에게 해당 출력에 영향을 주는 정보를 묻는 프롬프트를 표시하지 않음을 의미합니다.

변환 구성 편집기기본 페이지에 선택란을 표시하려면 이 특성을 true로 설정하십시오. 변환 사용자는 이 선택란을 선택하여 변환을 자동 모드에서 실행합니다.

다음 예제와 같이, plugin.xml 파일의 <Transformation> 요소에 이 특성을 추가합니다.
<Transformation
	...
	supportsSilentMode="true"
	supportsSourceOverride="false"
	targetModelType="resource"
	version="1.0.0/>
	...
</Transformation>
supportsSourceOverride 이 특성은 사용자가 변환 구성에서 지정하는 변환 소스 대체를 변환이 지원하는지 여부를 지정합니다.

변환 인스턴스 실행에 대한 추가 옵션을 제공하는 팝업 메뉴를 사용하려면 이 특성을 true로 설정하십시오. 변환 사용자가 프로젝트 탐색기 보기에서 변환 소스를 나타내는 오브젝트를 마우스 오른쪽 단추로 클릭하여 변환 소스를 대체하는 경우, Eclipse Workbench는 팝업 메뉴를 표시합니다.

usesMapping 이 특성은 변환이 변환 맵핑 유틸리티를 사용하는지 여부를 지정합니다.

변환 구성 편집기맵핑 페이지를 표시하려면 이 특성을 true로 설정하십시오. 이 페이지를 표시하면 변환 사용자가 맵핑 모델을 작성하고 편집할 수 있습니다.

변환의 plug-in.xml 파일에서, 이 주제의 맨 앞에 있는 코드 단편에 표시된 것처럼 <Transformation> 요소에서 <Property> 요소를 작성하십시오.
usesReporting 이 특성은 보고 도구를 사용하여 변환이 오류 로그에 있는 문제를 보고하는지 여부를 지정합니다.
변환 구성 편집기기본 페이지에 다음 옵션을 표시하려면 이 특성을 true로 설정하십시오.
  • 변환 완료 시 보고서 대화 상자 열기
  • 보고서 대화 상자에 경고 표시
첫 번째 옵션은 변환이 실행될 때 발생한 문제점을 표시하는 창이 변환에서 열리는지 여부를 지정합니다. 두 번째 옵션은 변환이 보고서 대화 상자에서 경고를 표시하는지 여부를 지정합니다. 기본적으로, 창에는 오류만 표시됩니다.

피드백