DesignerGeneratorAction.java 文件源码

java
阅读 23 收藏 0 点赞 0 评论 0

项目:OCCI-Studio 作者:
private IProject generateDesignProject(String occieLocation, String designName, String designProjectName,
        final IProgressMonitor monitor) throws CoreException, IOException {

    // Load the ecore file.
    String ecoreLocation = occieLocation.replace(".occie", ".ecore");
    URI ecoreURI = URI.createFileURI(ecoreLocation);
    // Create a new resource set.
    ResourceSet resourceSet = new ResourceSetImpl();
    // Load the OCCI resource.
    org.eclipse.emf.ecore.resource.Resource resource = resourceSet.getResource(ecoreURI, true);
    // Return the first element.
    EPackage ePackage = (EPackage) resource.getContents().get(0);

    String extensionScheme = Occi2Ecore.convertEcoreNamespace2OcciScheme(ePackage.getNsURI());

    // Register the ePackage to avoid an error when trying to open the generated
    // .odesign file,
    EPackage.Registry.INSTANCE.put(ePackage.getNsURI(), ePackage);


    URI occieURI = URI.createFileURI(occieLocation);

    /*
     * Create design project
     */
    IProject project = DesignerGeneratorUtils.genDesignProject(designProjectName, designName, extensionScheme,
            new ProgressMonitorDialog(shell));

    /*
     * Create design model
     */
    org.eclipse.cmf.occi.core.gen.design.main.Generate generator = new org.eclipse.cmf.occi.core.gen.design.main.Generate(
            occieURI, project.getFolder("description").getLocation().toFile(), new ArrayList<String>());
    generator.doGenerate(BasicMonitor.toMonitor(monitor));
    project.refreshLocal(IResource.DEPTH_INFINITE, monitor);
    return project;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号