Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/util/PageflowModelManager.java')
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/util/PageflowModelManager.java279
1 files changed, 0 insertions, 279 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/util/PageflowModelManager.java b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/util/PageflowModelManager.java
deleted file mode 100644
index 5f57ddfac..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/util/PageflowModelManager.java
+++ /dev/null
@@ -1,279 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jst.jsf.facesconfig.ui.pageflow.util;
-
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
-import org.eclipse.emf.ecore.xmi.XMLResource;
-import org.eclipse.jst.jsf.facesconfig.ui.pageflow.model.PageflowPage;
-import org.eclipse.jst.jsf.facesconfig.ui.pageflow.model.Pageflow;
-import org.eclipse.jst.jsf.facesconfig.ui.pageflow.model.PageflowFactory;
-import org.eclipse.jst.jsf.facesconfig.ui.pageflow.model.PageflowNode;
-import org.eclipse.jst.jsf.facesconfig.ui.pageflow.model.PageflowPackage;
-import org.eclipse.jst.jsf.facesconfig.ui.pageflow.model.impl.PageflowPackageImpl;
-
-/**
- * Drives the model. Acts as the model entry point, including create, load, save
- * operations.
- *
- * @author Xiao-guang Zhang
- */
-public class PageflowModelManager {
- /**
- * In EMF, a resource provides the way to have access to the model content.
- */
- private Resource resourcePageflow = null;
-
- /**
- * the path of current pageflow model resource provides the way to have
- * access to the model content.
- */
- private IPath pathPageflow = null;
-
- /**
- * Contains the factory associated with the model.
- */
- private static PageflowFactory pageflowFactory = null;
-
- /**
- * Gives access to the top level pageflow contained in the resource.
- */
- private Pageflow pageflow = null;
-
- /**
- * resource set
- */
- private ResourceSet resourceSet = null;
-
- /** unicode encoding UTF-8 support */
- private static HashMap defaultSaveOptions = new HashMap();
-
- static {
- defaultSaveOptions.put(XMLResource.OPTION_ENCODING, "UTF-8"); //$NON-NLS-1$
- }
-
- /**
- * Uses lazy initialization.
- *
- * @param path -
- * pageflow file name
- * @return the resource containing the pageflow
- */
- public Resource getResource(IPath path) {
- if (resourcePageflow == null) {
- pathPageflow = path;
- ResourceSet resSet = getResourceSet();
- resourcePageflow = resSet.getResource(URI.createPlatformResourceURI(path
- .toString(), false), true);
- }
-
- return resourcePageflow;
- }
-
- /**
- *
- * @return the top level pageflow model
- */
- public Pageflow getModel() {
- if (null == pageflow) {
- EList l = resourcePageflow.getContents();
- Iterator i = l.iterator();
- while (i.hasNext()) {
- Object o = i.next();
- if (o instanceof Pageflow) {
- pageflow = (Pageflow) o;
- }
- }
- }
- return pageflow;
- }
-
- /**
- * Creates a resource to contain the network. The resource file does not
- * exist yet.
- *
- * @param path
- * @return
- */
- private Resource createResource(IPath path) {
- if (resourcePageflow == null) {
- pathPageflow = path;
- ResourceSet resSet = getResourceSet();
- resourcePageflow = resSet.createResource(URI.createPlatformResourceURI(path
- .toString(), false));
- }
- return resourcePageflow;
- }
-
- /**
- * Returns the resource set.
- *
- * @param
- * @return
- */
- private ResourceSet getResourceSet() {
- if (null == resourceSet) {
- // Initialize the pageflow package, this line can not be removed.
- PageflowPackageImpl.init();
- // Register the XML resource factory for the .pageflow extension
- Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE;
- Map regMap = reg.getExtensionToFactoryMap();
- // m.put("pageflow", new XMIResourceFactoryImpl());
- regMap.put("pageflow", new PageflowResourceFactoryImpl());
-
- resourceSet = new ResourceSetImpl();
- }
-
- return resourceSet;
- }
-
- /**
- * Returns the factory associated with the model. Object creation are made
- * through that factory.
- *
- * @return - pageflow factory
- */
- static public PageflowFactory getFactory() {
- if (pageflowFactory == null) {
- // Access the factory (needed to create instances)
- Map registry = EPackage.Registry.INSTANCE;
- String pageflowURI = PageflowPackage.eNS_URI;
- PageflowPackage pageflowPackage = (PageflowPackage) registry
- .get(pageflowURI);
- pageflowFactory = pageflowPackage.getPageflowFactory();
- }
- return pageflowFactory;
- }
-
- /**
- * Creates a new pageflow model with begin and end nodes.
- *
- * @param path -
- * the new pageflow file name
- * @return - new pageflow model
- */
- public Pageflow createPageflow(IPath path) {
- createResource(path);
- // Create a new pageflow model
- Map registry = EPackage.Registry.INSTANCE;
- String pageflowURI = PageflowPackage.eNS_URI;
- PageflowPackage nPackage = (PageflowPackage) registry.get(pageflowURI);
- PageflowFactory nFactory = nPackage.getPageflowFactory();
- pageflow = nFactory.createPageflow();
-
- resourcePageflow.getContents().add(pageflow);
- return pageflow;
- }
-
- /**
- * Loads the content of the model from the file.
- *
- * @param path
- */
- public void load(IPath path) {
- getResource(path);
- }
-
- /**
- * reloads the content of the model from the file.
- *
- * @param path
- */
- public void reload(IPath path) {
- getResource(path).unload();
- load(path);
- }
-
- /**
- * Saves the content of the model to the file.
- *
- * @param path
- * @throws IOException
- */
- public void save(final IPath path) throws IOException {
- if (!pathPageflow.toString().equalsIgnoreCase(path.toString())) {
- pathPageflow = path;
- URI fileURI = URI.createPlatformResourceURI(path.toString(), false);
- resourcePageflow.setURI(fileURI);
- }
- resourcePageflow.save(defaultSaveOptions);
- }
-
- /**
- * get the file path of current pageflow resource
- *
- * @return - the file path
- */
- public IPath getPath() {
- return pathPageflow;
- }
-
- /**
- * @param webPath
- * @return found page node according the web path.
- */
- public PageflowPage foundPage(String webPath) {
- PageflowPage page = null;
-
- if (getModel() != null) {
- Iterator iterNodes = getModel().getNodes().iterator();
- while (iterNodes.hasNext()) {
- PageflowNode node = (PageflowNode) iterNodes.next();
- if (node instanceof PageflowPage) {
- if (((PageflowPage) node).getPath().equalsIgnoreCase(webPath)) {
- page = (PageflowPage) node;
- break;
- }
- }
- }
- }
-
- return page;
- }
-
- /**
- *
- * Build a path for the resource in the .metadata directory given the path
- * of the model resource. For example, given a model resource path of
- * \test\folder\filename.ext the resulting Pageflow path name will be
- * \test\.metadata\folder\filename.pageflow
- *
- * @param pathFacesConfig -
- * faces-config file path.
- *
- * @return the ipath
- */
- public static IPath makePageflowPath(IPath pathFacesConfig) {
- IPath pageflowPath;
- String[] segs = pathFacesConfig.removeFileExtension().segments();
- pageflowPath = new Path(segs[0]).makeAbsolute();
- pageflowPath = pageflowPath.append(".metadata");
- for (int i = 1; i < segs.length; i++) {
- pageflowPath = pageflowPath.append(segs[i]);
- }
- // pageflowPath.removeFileExtension();
- pageflowPath = pageflowPath.addFileExtension("pageflow");
- return pageflowPath;
- }
-}

Back to the top