View Javadoc
1 package com.bonevich.erj.app; 2 3 import com.bonevich.erj.model.Schema; 4 5 import ru.novosoft.mdf.ext.MDFOutermostPackage; 6 7 import java.io.File; 8 import java.io.OutputStream; 9 import java.io.InputStream; 10 import java.io.IOException; 11 12 import org.xml.sax.InputSource; 13 14 public final class ProjectModel extends ProjectComponent 15 { 16 ////////////////////////////////////////////////////////// 17 // Constants 18 public static final String MODEL_EXTENSION = "." + XMI; 19 public static final String XMI_VERSION = "1.1"; 20 21 ////////////////////////////////////////////////////////// 22 // Attributes 23 private Schema _model; 24 private MDFOutermostPackage _repository; 25 26 ////////////////////////////////////////////////////////// 27 // Constructors 28 public ProjectModel(Project project, Schema model) 29 { 30 super(project); 31 _model = model; 32 setType(XMI); 33 } 34 35 ////////////////////////////////////////////////////////// 36 // Operations 37 public Schema getModel() 38 { 39 return _model; 40 } 41 42 public String getEntryExtension() 43 { 44 return MODEL_EXTENSION; 45 } 46 47 public void initEntryFilename() 48 { 49 if (_model != null) 50 { 51 _entryFilename = _project.getName() + "_" + _model.getIdentifier() + MODEL_EXTENSION; 52 } 53 } 54 55 public void load(InputStream in) throws IOException 56 { 57 InputSource src = new InputSource(in); 58 File path = new File(_project.getFilepath()); 59 src.setSystemId(path.toURL().toString() + "$" + getEntryFilename()); 60 61 System.out.println("======================================================"); 62 System.out.println("== READING MODEL: " + src.getSystemId()); 63 System.out.println(); 64 65 ModelConverter converter = ModelConverter.create(ModelConverter.TARGET_MOF); 66 _repository = (MDFOutermostPackage) converter.getRepository(); 67 _repository.getXMIReader(XMI_VERSION).read(in, _repository); 68 _model = (Schema) converter.convert(_repository); 69 initEntryFilename(); 70 } 71 72 public void save(OutputStream out) throws IOException 73 { 74 ModelConverter converter = ModelConverter.create(ModelConverter.TARGET_ERJ); 75 _repository = (MDFOutermostPackage) converter.convert(_model); 76 _repository.getXMIWriter(XMI_VERSION).write(_repository, out); 77 } 78 79 } /*** end class ProjectModel */

This page was automatically generated by Maven