모델에서 텍스트로 변환 샘플 세부사항

이 샘플에는 다음과 같은 세 가지 변환이 포함됩니다.

변환

설명

클래스에서 텍스트 -> 콘솔 이 변환은 UML 클래스를 해당 소스로 승인하며 클래스 설명(클래스 이름과 해당 속성 및 오퍼레이션과 오퍼레이션의 매개변수)을 콘솔 보기에 기록합니다.
클래스에서 텍스트 -> 파일 이 변환은 클래스에서 텍스트 콘솔로 변환과 동일하지만 해당 결과를 콘솔 보기 대신 파일에 기록합니다.
상태에서 JSP로 이 변환은 상태 머신을 해당 소스로 승인하고 ScreenFlow 프로파일의 스테레오타입이 있는 각 상태에 대한 JSP 페이지를 생성합니다.

변환 구성 방법을 이해하려면 변환을 실행하고 소스 코드를 탐색해야 합니다. 소스 코드를 읽을 때는 다음 가이드라인을 따라야 합니다.

  • 먼저 규칙을 구현하는 Java 클래스를 확인하십시오. 이름이 .rules로 끝나는 패키지에 클래스가 나타납니다.
  • 규칙 세트는 하나 이상의 변환으로 결합됩니다. 변환은 이름이 .transforms로 끝나는 패키지의 Java 클래스로 구현됩니다. 먼저 transform 클래스에 대한 코드를 읽은 다음 root transforms에 대한 코드를 읽을 수 있습니다.
  • 마지막으로 플러그인 Manifest 파일, plugin.xmlTransformationProvider 클래스에 대한 코드를 확인하여 변환 서비스에 변환이 연결되는 방법을 이해하십시오.

클래스에서 텍스트로 변환

이 변환은 UML 클래스, 패키지 또는 모델을 해당 소스로 승인하며 클래스 이름과 해당 속성 및 오퍼레이션과 오퍼레이션의 매개변수를 콘솔 보기 또는 파일에 기록합니다. 모델 또는 패키지를 소스로 선택하면 변환 시 모델 또는 패키지가 포함하는 모든 클래스의 세부사항을 기록합니다.

이 변환에는 다음과 같은 두 가지 유형이 있습니다.

  1. 클래스에서 텍스트 -> 콘솔: 이 변환은 콘솔 보기에 출력을 기록하며 대상이 필요하지 않습니다.

    이 샘플 변환은 다음 작업을 수행하는 방법을 보여줍니다.

    • 간단한 규칙을 작성하여 하나 이상의 변환으로 결합
    • 변환 제공자 작성
    • 플러그인 Manifest 파일, plugin.xml에 변환 및 해당 제공자에 대해 설명

  2. 클래스에서 텍스트 -> 파일: 이 변환은 파일에 출력을 기록하며 대상으로 프로젝트가 필요합니다. 기본적으로 사용자가 지정하는 프로젝트의 ClassToTextOutput 폴더에 class2text.txt 파일이 작성됩니다. 변환 특성, 대상 파일 이름을 사용하면 파일의 기본 이름을 변경할 수 있습니다.

    이 샘플 변환은 다음과 같은 추가 작업을 수행하는 방법을 보여줍니다.

    • 플러그인 Manifest 파일, plugin.xml에 변환 특성에 대해 설명
    • 규칙 내부에서 변환 특성 조작

상태에서 JSP로 변환

이 변환은 상태 머신의 UML 상태를 해당 소스로 승인하며 JET(Java Emitter Template)를 사용하여 JSP 파일 양식의 웹 페이지를 생성합니다. 상태 머신 또는 영역을 소스로 선택하면 변환 시 상태 머신 또는 ScreenFlow 프로파일의 스테레오타입이 적용된 영역의 각 상태에 대한 JSP 파일이 생성됩니다.

이 샘플 변환은 다음 작업을 수행하는 방법을 보여줍니다.

  • 스트레오타입 및 키워드를 사용하여 선택적으로 규칙 트리거
  • JET 기능 및 변환을 결합하여 텍스트 생성

소스 상태 머신의 변환을 준비하려면 상태 머신을 포함하는 UML 모델에 ScreenFlow 프로파일을 적용하고 ScrrenFlow 프로파일의 스테레오타입을 해당 상태에 적용하여 상태 머신을 마크업해야 합니다. ScreenFlow 프로파일에는 네 가지 스테레오타입(form, editform, selectlistdisplay)이 포함됩니다. 이러한 스테레오타입은 생성된 페이지의 동적 컨텐츠에 대한 표시 스타일을 결정합니다. 샘플은 스트레오타입을 사용하여 표시 스타일이 편집 가능한 스타일 또는 선택 가능한 목록인지 여부 등을 결정합니다. 한 상태에 둘 이상의 스테레오타입을 적용하는 경우 변환 시 첫 번째 스테레오타입만 고려합니다.

샘플은 또한 스테레오타입의 특성을 사용하여 JSP 페이지를 통해 교환되는 데이터를 결정합니다. 변환 시 네 가지 스테레오타입 중 한 가지 스테레오타입이 상태에 적용되는 경우의 상태에 해당하는 JSP 페이지가 생성됩니다. JSP 파일이 이미 있는 경우, 변환을 실행해도 해당 파일을 겹쳐쓰지 않습니다. 변환 특성인 출력 파일 겹쳐쓰기 값을 true로 설정하여 변환 시 파일을 겹쳐쓰는지 여부를 변경할 수 있습니다.

ScreenFlow 프로파일

다음 테이블은 ScreenFlow 프로파일의 스테레오타입 및 해당 특성을 보여줍니다. 테이블의 값은 예시용일 뿐입니다.

스테레오타입

기본 클래스

특성:값

설명

display
<<display>>
상태 엔티티:담당자
필드:이름, 주소
생성된 JSP 페이지에 담당자 세부사항(이름 및 주소)이 표시됨을 의미합니다.
editform
<<editform>>
상태 엔티티:담당자
필드:이름, 주소
생성된 JSP 페이지에 사용자가 담당자 세부사항(이름 및 주소)을 입력 또는 편집할 수 있는 편집 가능한 양식이 포함됨을 의미합니다.
form
<<form>>
상태 필드:사용자 이름 생성된 JSP 페이지에 사용자 이름을 입력할 양식이 포함됨을 의미합니다.
selectlist
<<selectlist>>
상태 엔티티:담당자
필드:이름, 주소
selectfield:ID
생성된 JSP 페이지에 특정 ID를 사용하는 담당자를 선택하는 데 사용할 수 있는 담당자 목록이 포함됨을 의미합니다.