# astah* API 利用ガイド

## 【モデルの編集方法】

各インターフェース、メソッドの詳細についてはastah* APIのJavaDocをご覧ください。
astah* APIのモデルの作成/編集/削除機能は、astah* UML, professionalでサポートしています。

モデルを編集する場合、トランザクション操作が必要です。
トランザクション操作(モデル/図/プレゼンテーションの作成・編集・削除時)をご覧ください。

クラス名と定義の編集

      try {
          TransactionManager.beginTransaction();
          BasicModelEditor bme = ModelEditorFactory.getBasicModelEditor();
          //クラスを作成
          IClass class0 = bme.createClass(project, "class0");
          //名前を設定
          class0.setName("new class name");
          //定義を設定
          class0.setDefinition("Definition of the class");
          TransactionManager.endTransaction();
      } catch (InvalidEditingException e) {
          TransactionManager.abortTransaction();
     }

ERエンティティ物理名の編集(professionalのみ)

      IERModel erModel = (IERModel) getElement(project.getOwnedElements(), "ER_Model");
      schema = erModel.getSchemata()[0];
      IEREntity[] entities = schema.getEntities();
      for (int i = 0; i < entities.length; i++) {
          if ("Entity0".equals(entities[i].getName())) {
          try {
             TransactionManager.beginTransaction();
             //物理名を設定
             entities[i].setPhysicalName("entity0 physical name");
             TransactionManager.endTransaction();
          } catch (InvalidEditingException e) {
             TransactionManager.abortTransaction();
          }
      }

HOME