Skip to main content

This CGIT instance is deprecated, and repositories have been moved to Gitlab or Github. See the repository descriptions for specific locations.

summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/EntitiesCoordinatesXML.java')
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/EntitiesCoordinatesXML.java243
1 files changed, 0 insertions, 243 deletions
diff --git a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/EntitiesCoordinatesXML.java b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/EntitiesCoordinatesXML.java
deleted file mode 100644
index db7b402e6f..0000000000
--- a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/EntitiesCoordinatesXML.java
+++ /dev/null
@@ -1,243 +0,0 @@
-package org.eclipse.jpt.jpadiagrameditor.ui.internal.util;
-
-import java.io.Closeable;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.graphiti.mm.algorithms.RoundedRectangle;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.mm.pictograms.Shape;
-import org.eclipse.graphiti.services.Graphiti;
-import org.eclipse.jpt.jpadiagrameditor.ui.internal.JPADiagramEditorPlugin;
-import org.eclipse.jpt.jpadiagrameditor.ui.internal.i18n.JPAEditorMessages;
-import org.eclipse.jpt.jpadiagrameditor.ui.internal.modelintegration.util.ModelIntegrationUtil;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.Text;
-import org.xml.sax.SAXException;
-
-public class EntitiesCoordinatesXML {
-
- private Document document;
- private Element rootElement;
- private String projectName;
-
- public static final String XML_ELEMENT_POSITION = "\n\t\t"; //$NON-NLS-1$
-
- public EntitiesCoordinatesXML(String projectName){
- this.projectName = projectName;
- DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
- documentBuilderFactory.setNamespaceAware(true);
- InputStream is = null;
- try {
- DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
- is = (InputStream)findXMLFile(true);
- document = documentBuilder.parse(is);
- rootElement = document.getDocumentElement();
- } catch (ParserConfigurationException e) {
- JPADiagramEditorPlugin.logError(JPAEditorMessages.EntitiesCoordinatesXML_CannotParseFileErrorMSG, e);
- } catch (SAXException e) {
- JPADiagramEditorPlugin.logError(JPAEditorMessages.EntitiesCoordinatesXML_CannotParseFileErrorMSG, e);
- } catch (IOException e) {
- JPADiagramEditorPlugin.logError(JPAEditorMessages.EntitiesCoordinatesXML_CannotReadFileErrorMSG, e);
- } finally {
- if (is != null)
- try {
- is.close();
- } catch (IOException e) {
- // ignore
- }
- }
- }
-
-
- private Closeable findXMLFile(boolean inputStream) throws FileNotFoundException{
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
- try {
- IResource[] resources = project.members();
- for (IResource res : resources) {
- if (res instanceof IFolder) {
- IFile existingXMLFile = ((IFolder) res).getFile(projectName + "." + ModelIntegrationUtil.DIAGRAM_XML_FILE_EXTENSION); //$NON-NLS-1$
- if (existingXMLFile != null && existingXMLFile.exists()) {
- return inputStream ?
- new FileInputStream(new File(existingXMLFile.getLocationURI())) :
- new FileOutputStream(new File(existingXMLFile.getLocationURI()));
- }
- }
- }
- } catch (CoreException e) {
- JPADiagramEditorPlugin.logError(JPAEditorMessages.EntitiesCoordinatesXML_CannotObtainProjectErrorMSG, e);
- }
- IFile existingXMLFile = project.getFile(ModelIntegrationUtil.getDiagramsXMLFolderPath(project).append(projectName).addFileExtension(ModelIntegrationUtil.DIAGRAM_XML_FILE_EXTENSION));
- return inputStream ? new FileInputStream(new File(existingXMLFile.getLocationURI())) :
- new FileOutputStream(new File(existingXMLFile.getLocationURI()));
- }
-
- synchronized public void store() {
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
- Diagram diagram = ModelIntegrationUtil.getDiagramByProject(project);
- List<Shape> picts = diagram.getChildren();
- Iterator<Shape> it = picts.iterator();
- // collecting data from the saved pictograms
- document.removeChild(rootElement);
- rootElement = document.createElement("entities"); //$NON-NLS-1$
- document.appendChild(rootElement);
-
- while (it.hasNext()) {
- Shape pict = it.next();
- String name = Graphiti.getPeService().getPropertyValue(pict, JPAEditorConstants.PROP_ENTITY_CLASS_NAME);
-
- RoundedRectangle rect = (RoundedRectangle) pict.getGraphicsAlgorithm();
-
- boolean isPrimaryCollapsed = JPAEditorConstants.TRUE_STRING.equals(Graphiti.getPeService().getPropertyValue(pict,
- JPAEditorConstants.PRIMARY_COLLAPSED));
- boolean isRelationCollapsed = JPAEditorConstants.TRUE_STRING.equals(Graphiti.getPeService().getPropertyValue(pict,
- JPAEditorConstants.RELATION_COLLAPSED));
- boolean isBasicCollapsed = JPAEditorConstants.TRUE_STRING.equals(Graphiti.getPeService().getPropertyValue(pict,
- JPAEditorConstants.BASIC_COLLAPSED));
-
- Element entity = createEntityElementTag(document, rootElement, JPAEditorConstants.ENTITY_XML_TAG, XML_ELEMENT_POSITION);
- Text nameText = document.createTextNode(name);
- Element entityName = document.createElement(JPAEditorConstants.ENTITY_NAME_TAG);
- createChildElementTag(document, nameText, entityName, entity, XML_ELEMENT_POSITION);
-
- Text width = document.createTextNode(String.valueOf(rect.getWidth()));
- Element entityWidth = document.createElement(JPAEditorConstants.ENTITY_WIDTH_TAG);
- createChildElementTag(document, width, entityWidth, entity, XML_ELEMENT_POSITION);
-
- Text height = document.createTextNode(String.valueOf(rect.getHeight()));
- Element entityHeight = document.createElement(JPAEditorConstants.ENTITY_HEIGHT_TAG);
- createChildElementTag(document, height, entityHeight, entity, XML_ELEMENT_POSITION);
-
- Text xCoordinate = document.createTextNode(String.valueOf(rect.getX()));
- Element entityXCoordinate = document.createElement(JPAEditorConstants.ENTITY_X_COORDINATE_TAG);
- createChildElementTag(document, xCoordinate, entityXCoordinate, entity, XML_ELEMENT_POSITION);
-
- Text yCoordinate = document.createTextNode(String.valueOf(rect.getY()));
- Element entityYCoordinate = document.createElement(JPAEditorConstants.ENTITY_Y_COORDINATE_TAG);
- createChildElementTag(document, yCoordinate, entityYCoordinate, entity, XML_ELEMENT_POSITION);
-
- Text primaryCollapsed = document.createTextNode(String.valueOf(isPrimaryCollapsed));
- Element entityPrimaryCollapsed = document.createElement(JPAEditorConstants.ENTITY_PRIMARY_SECTION_STATE_TAG);
- createChildElementTag(document, primaryCollapsed, entityPrimaryCollapsed, entity, XML_ELEMENT_POSITION);
-
- Text relationCollapsed = document.createTextNode(String.valueOf(isRelationCollapsed));
- Element entityRelationCollapsed = document.createElement(JPAEditorConstants.ENTITY_RELATION_SECTION_STATE_TAG);
- createChildElementTag(document, relationCollapsed, entityRelationCollapsed, entity, XML_ELEMENT_POSITION);
-
- Text basicCollapsed = document.createTextNode(String.valueOf(isBasicCollapsed));
- Element entityBasicCollapsed = document.createElement(JPAEditorConstants.ENTITY_BASIC_SECTION_STATE_TAG);
- createChildElementTag(document, basicCollapsed, entityBasicCollapsed, entity, "\n\t"); //$NON-NLS-1$
-
- rootElement.appendChild(document.createTextNode("\n")); //$NON-NLS-1$
-
- }
- ModelIntegrationUtil.setXmiExists(false);
- }
-
- synchronized public void load(Hashtable<String, SizePosition> marks){
- if(rootElement.getChildNodes().getLength()<=1){
- if(ModelIntegrationUtil.xmiExists()){
- store();
- save();
- }
- }
-
- NodeList nodeList = rootElement.getElementsByTagName(JPAEditorConstants.ENTITY_XML_TAG);
- for(int i=0; i<nodeList.getLength();i++){
- Element node = (Element) nodeList.item(i);
- String entityName = node.getElementsByTagName(JPAEditorConstants.ENTITY_NAME_TAG).item(0).getTextContent();
- int width = Integer.parseInt(node.getElementsByTagName(JPAEditorConstants.ENTITY_WIDTH_TAG).item(0).getTextContent());
- int height = Integer.parseInt(node.getElementsByTagName(JPAEditorConstants.ENTITY_HEIGHT_TAG).item(0).getTextContent());
- int xCoordinate = Integer.parseInt(node.getElementsByTagName(JPAEditorConstants.ENTITY_X_COORDINATE_TAG).item(0).getTextContent());
- int yCoordinate = Integer.parseInt(node.getElementsByTagName(JPAEditorConstants.ENTITY_Y_COORDINATE_TAG).item(0).getTextContent());
- boolean isPrimaryCollapsed = Boolean.parseBoolean(node.getElementsByTagName(JPAEditorConstants.ENTITY_PRIMARY_SECTION_STATE_TAG).item(0).getTextContent());
- boolean isRelationCollapsed = Boolean.parseBoolean(node.getElementsByTagName(JPAEditorConstants.ENTITY_RELATION_SECTION_STATE_TAG).item(0).getTextContent());
- boolean isBasicCollapsed = Boolean.parseBoolean(node.getElementsByTagName(JPAEditorConstants.ENTITY_BASIC_SECTION_STATE_TAG).item(0).getTextContent());
-
- SizePosition rectSP = new SizePosition(width, height, xCoordinate, yCoordinate);
- rectSP.primaryCollapsed = isPrimaryCollapsed;
- rectSP.relationCollapsed = isRelationCollapsed;
- rectSP.basicCollapsed = isBasicCollapsed;
-
- marks.put(entityName, rectSP);
- }
-
- }
-
- private Element createEntityElementTag(Document document, Element scheduleElement, String descr, String position) {
- Element job = document.createElement(descr);
- scheduleElement.appendChild(document.createTextNode("\n\t")); //$NON-NLS-1$
- scheduleElement.appendChild(job);
- job.appendChild(document.createTextNode(position));
-
- return job;
- }
-
- private void createChildElementTag(Document document, Text nameText, Element nameEl, Element parentElement, String position) {
- parentElement.appendChild(nameEl);
- nameEl.appendChild(nameText);
- parentElement.appendChild(document.createTextNode(position));
- }
-
- public void save() {
- OutputStream os = null;
- try {
- TransformerFactory transformerFactory = TransformerFactory.newInstance();
- Transformer transformer = transformerFactory.newTransformer();
- os = (OutputStream)findXMLFile(false);
- transformer.transform(new DOMSource(document), new StreamResult(os));
- os.flush();
- } catch (Exception e) {
- JPADiagramEditorPlugin.logError(JPAEditorMessages.EntitiesCoordinatesXML_CannotCreateDOMFileErrorMSG, e);
- } finally {
- try {
- os.close();
- } catch (IOException e) {
- // ignore
- }
- }
- }
-
- synchronized public void close() {
- save();
- clean();
- }
-
- synchronized public void clean() {
- try {
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
- project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
- } catch (CoreException e) {
- JPADiagramEditorPlugin.logError(JPAEditorMessages.EntitiesCoordinatesXML_CannotRefrfreshFile, e);
- }
- document = null;
- rootElement = null;
- }
-
-
-}

Back to the top