分子の例では、クラスとメソッドが 1 つの分子を表し、ダイアグラム・コンポーネントでそれを表示できるようにします。
特定の分子を表示するには、データ・ソースから
Molecule
インスタンスをロードする必要があります。
以下のコード例は、フェノール分子が含まれるデータ・ソースを示しています。
このクラスは、 IlvDiagrammerDataSource のサブクラスです。
public class PhenolMoleculeDataSource extends IlvDiagrammerDataSource { ...
read メソッド
データ・ソースをダイアグラム・コンポーネントにロードするには、以下のコード例に示すように、
read
メソッドを呼び出します。
public void read(IlvDiagrammer diagrammer) throws IlvDiagrammerException { Molecule phenol = Molecule.createPhenolMolecule(); MoleculeModel model = new MoleculeModel(phenol); diagrammer.getEngine().setModel(model); }
read
メソッドのコード行は、以下のようになっています。
- 専用の静的メソッドを使用してフェノール
Molecule
インスタンスを作成します。 Molecule
インスタンスを分子モデルにラップします。- 新しいモデルをダイアグラム・コンポーネントにロードします。
空のメソッド
抽象メソッドであるために実装する必要があるその他のメソッドが、データ・ソース・クラスにありますが、これらは何もしません。
以下のコード例は、こうしたメソッドを示しています。
未使用の抽象メソッドの実装
public void write(IlvDiagrammer diagrammer) throws IlvDiagrammerException { } protected void serializeImpl(Element element) throws IlvDiagrammerException { } protected void deserializeImpl(Element element) throws IlvDiagrammerException { }
分子データは書き込むことができないため、
write
メソッドは必要ありません。
追加の情報を書き込んでプロジェクト・ファイルにデータ・ソースを定義する必要がないため、
serialize
メソッドは必要ありません。
追加の情報を読み込んでプロジェクト・ファイルからデータ・ソースをロードする必要がないため、
deserialize
メソッドは必要ありません。