org.eclipse.jpt.core.resource.xml
Class JpaXmlResource

java.lang.Object
  extended by org.eclipse.emf.common.notify.impl.BasicNotifierImpl
      extended by org.eclipse.emf.common.notify.impl.NotifierImpl
          extended by org.eclipse.emf.ecore.resource.impl.ResourceImpl
              extended by org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl
                  extended by org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl
                      extended by org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResourceImpl
                          extended by org.eclipse.wst.common.internal.emf.resource.ReferencedXMIResourceImpl
                              extended by org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl
                                  extended by org.eclipse.jpt.core.resource.xml.JpaXmlResource
All Implemented Interfaces:
org.eclipse.emf.common.notify.Notifier, org.eclipse.emf.ecore.resource.Resource, org.eclipse.emf.ecore.resource.Resource.Internal, org.eclipse.emf.ecore.xmi.XMIResource, org.eclipse.emf.ecore.xmi.XMLResource, JpaResourceModel, org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResource, org.eclipse.wst.common.internal.emf.resource.IRootObjectResource, org.eclipse.wst.common.internal.emf.resource.ReferencedResource, org.eclipse.wst.common.internal.emf.resource.TranslatorResource

public class JpaXmlResource
extends org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl
implements JpaResourceModel

Provisional API: This interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

Since:
2.2
Version:
2.3

Nested Class Summary
 
Nested classes/interfaces inherited from class org.eclipse.wst.common.internal.emf.resource.ReferencedXMIResourceImpl
org.eclipse.wst.common.internal.emf.resource.ReferencedXMIResourceImpl.ESynchronizedAdapterList
 
Nested classes/interfaces inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EAdapterList<E extends java.lang.Object & org.eclipse.emf.common.notify.Adapter>, org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EObservableAdapterList
 
Nested classes/interfaces inherited from interface org.eclipse.wst.common.internal.emf.resource.TranslatorResource
org.eclipse.wst.common.internal.emf.resource.TranslatorResource.DocTypeFeature
 
Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.xmi.XMLResource
org.eclipse.emf.ecore.xmi.XMLResource.ElementHandler, org.eclipse.emf.ecore.xmi.XMLResource.ResourceEntityHandler, org.eclipse.emf.ecore.xmi.XMLResource.ResourceHandler, org.eclipse.emf.ecore.xmi.XMLResource.URIHandler, org.eclipse.emf.ecore.xmi.XMLResource.XMLInfo, org.eclipse.emf.ecore.xmi.XMLResource.XMLMap
 
Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.resource.Resource
org.eclipse.emf.ecore.resource.Resource.Diagnostic, org.eclipse.emf.ecore.resource.Resource.Factory, org.eclipse.emf.ecore.resource.Resource.Internal, org.eclipse.emf.ecore.resource.Resource.IOWrappedException
 
Field Summary
 
Fields inherited from class org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl
ID_FEATURE
 
Fields inherited from interface org.eclipse.wst.common.internal.emf.resource.TranslatorResource
DOC_TYPE_FEATURE
 
Fields inherited from interface org.eclipse.wst.common.internal.emf.resource.ReferencedResource
DELETED_ERROR_MSG, RESOURCE_ABOUT_TO_SAVE, RESOURCE_SAVE_FAILED, RESOURCE_WAS_SAVED
 
Fields inherited from interface org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResource
FORMAT_EMF1, FORMAT_MOF5
 
Fields inherited from interface org.eclipse.emf.ecore.xmi.XMIResource
OPTION_USE_XMI_TYPE, VERSION_NAME, VERSION_VALUE, XMI_ID, XMI_NAMESPACE_PREFIX, XMI_NS, XMI_TAG_NAME, XMI_URI
 
Fields inherited from interface org.eclipse.emf.ecore.xmi.XMLResource
HREF, NIL, NO_NAMESPACE_SCHEMA_LOCATION, OPTION_ANY_SIMPLE_TYPE, OPTION_ANY_TYPE, OPTION_CONFIGURATION_CACHE, OPTION_DECLARE_XML, OPTION_DEFER_ATTACHMENT, OPTION_DEFER_IDREF_RESOLUTION, OPTION_DISABLE_NOTIFY, OPTION_DOM_USE_NAMESPACES_IN_SCOPE, OPTION_ELEMENT_HANDLER, OPTION_ENCODING, OPTION_ESCAPE_USING_CDATA, OPTION_EXTENDED_META_DATA, OPTION_FLUSH_THRESHOLD, OPTION_FORMATTED, OPTION_KEEP_DEFAULT_CONTENT, OPTION_LAX_FEATURE_PROCESSING, OPTION_LAX_WILDCARD_PROCESSING, OPTION_LINE_WIDTH, OPTION_PARSER_FEATURES, OPTION_PARSER_PROPERTIES, OPTION_PROCESS_DANGLING_HREF, OPTION_PROCESS_DANGLING_HREF_DISCARD, OPTION_PROCESS_DANGLING_HREF_RECORD, OPTION_PROCESS_DANGLING_HREF_THROW, OPTION_RECORD_ANY_TYPE_NAMESPACE_DECLARATIONS, OPTION_RECORD_UNKNOWN_FEATURE, OPTION_RESOURCE_ENTITY_HANDLER, OPTION_RESOURCE_HANDLER, OPTION_ROOT_OBJECTS, OPTION_SAVE_DOCTYPE, OPTION_SAVE_TYPE_INFORMATION, OPTION_SCHEMA_LOCATION, OPTION_SCHEMA_LOCATION_IMPLEMENTATION, OPTION_SKIP_ESCAPE, OPTION_SKIP_ESCAPE_URI, OPTION_SUPPRESS_DOCUMENT_ROOT, OPTION_URI_HANDLER, OPTION_USE_CACHED_LOOKUP_TABLE, OPTION_USE_DEPRECATED_METHODS, OPTION_USE_ENCODED_ATTRIBUTE_STYLE, OPTION_USE_FILE_BUFFER, OPTION_USE_LEXICAL_HANDLER, OPTION_USE_PARSER_POOL, OPTION_USE_XML_NAME_TO_FEATURE_MAP, OPTION_XML_MAP, OPTION_XML_OPTIONS, OPTION_XML_VERSION, SCHEMA_LOCATION, TYPE, XML_NS, XML_SCHEMA_URI, XSI_NS, XSI_URI
 
Fields inherited from interface org.eclipse.emf.ecore.resource.Resource
OPTION_CIPHER, OPTION_SAVE_ONLY_IF_CHANGED, OPTION_SAVE_ONLY_IF_CHANGED_FILE_BUFFER, OPTION_SAVE_ONLY_IF_CHANGED_MEMORY_BUFFER, OPTION_ZIP, RESOURCE__CONTENTS, RESOURCE__ERRORS, RESOURCE__IS_LOADED, RESOURCE__IS_MODIFIED, RESOURCE__IS_TRACKING_MODIFICATION, RESOURCE__RESOURCE_SET, RESOURCE__TIME_STAMP, RESOURCE__URI, RESOURCE__WARNINGS
 
Constructor Summary
JpaXmlResource(org.eclipse.emf.common.util.URI uri, org.eclipse.wst.common.internal.emf.resource.Renderer renderer, org.eclipse.core.runtime.content.IContentType contentType, org.eclipse.wst.common.internal.emf.resource.Translator rootTranslator)
           
 
Method Summary
 void addResourceModelListener(JpaResourceModelListener listener)
          Changes to the resource model result in events.
 org.eclipse.emf.common.util.EList<org.eclipse.emf.common.notify.Adapter> eAdapters()
           
 void eNotify(org.eclipse.emf.common.notify.Notification notification)
          Override to fire notification only when: the resource's state has actually changed; and the resource is loaded; and the resource's resource set is still present (EMF will fire an notification when the resource set is set to 'null', just before the resource is "unloaded" - we want to swallow this notification)
 boolean fileExists()
           
 org.eclipse.emf.common.util.EList<org.eclipse.emf.ecore.EObject> getContents()
           
 org.eclipse.core.runtime.content.IContentType getContentType()
           
 java.lang.String getDoctype()
          only applicable for DTD-based files
 org.xml.sax.EntityResolver getEntityResolver()
           
 org.eclipse.core.resources.IFile getFile()
           
 org.eclipse.core.resources.IProject getProject()
           
 JpaResourceType getResourceType()
          Return the resource type of the model.
 JpaRootEObject getRootObject()
           
 org.eclipse.wst.common.internal.emf.resource.Translator getRootTranslator()
           
 java.lang.String getVersion()
           
 void modify(java.lang.Runnable runnable)
           
 void removeResourceModelListener(JpaResourceModelListener listener)
           
 java.lang.String toString()
           
 
Methods inherited from class org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl
accessForRead, accessForWrite, doSave, getEncoding, getPublicId, getRenderer, getSystemId, getVersionID, getXMLVersion, isModified, isReverting, isShared, isSharedForWrite, load, preDelete, releaseFromRead, releaseFromWrite, save, setDefaults, setDoctypeValues, setID, setRenderer, setVersionID, setXMLVersion, usesDTD
 
Methods inherited from class org.eclipse.wst.common.internal.emf.resource.ReferencedXMIResourceImpl
collectContainedObjects, ensureFullIDHydration, getReadCount, getWriteCount, isNew, isReadOnly, needsToSave, saveIfNecessary, setForceRefresh, shouldForceRefresh, unloadIfNecessary, wasReverted
 
Methods inherited from class org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResourceImpl
addOriginalPackageURI, doLoad, getFormat, getURIFragment, isLoaded, isPreserveIDs, isResourceBeingLoaded, loadExisting, removePreservingIds, setFormat, setPreserveIDs, usesDefaultFormat
 
Methods inherited from class org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl
getXMINamespace, getXMIVersion, setXMINamespace, setXMIVersion
 
Methods inherited from class org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl
doLoad, doLoad, doSave, getDefaultLoadOptions, getDefaultSaveOptions, getDOMHelper, getEObjectToExtensionMap, getEObjectToIDMap, getID, getIDToEObjectMap, load, load, save, save, setDoctypeInfo, setEncoding, setUseZip, toKeyString, useZip
 
Methods inherited from class org.eclipse.emf.ecore.resource.impl.ResourceImpl
attached, basicSetResourceSet, delete, detached, getAllContents, getEObject, getErrors, getIntrinsicIDToEObjectMap, getResourceSet, getTimeStamp, getURI, getWarnings, isLoading, isTrackingModification, load, save, setIntrinsicIDToEObjectMap, setModified, setTimeStamp, setTrackingModification, setURI, unload
 
Methods inherited from class org.eclipse.emf.common.notify.impl.NotifierImpl
eDeliver, eSetDeliver
 
Methods inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
eNotificationRequired
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.wst.common.internal.emf.resource.ReferencedResource
getReadCount, getWriteCount, isNew, isReadOnly, needsToSave, saveIfNecessary, setForceRefresh, shouldForceRefresh, unloadIfNecessary, wasReverted
 
Methods inherited from interface org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResource
addOriginalPackageURI, getFormat, removePreservingIds, setFormat, usesDefaultFormat
 
Methods inherited from interface org.eclipse.emf.ecore.xmi.XMIResource
getXMINamespace, getXMIVersion, setXMINamespace, setXMIVersion
 
Methods inherited from interface org.eclipse.emf.ecore.xmi.XMLResource
getDefaultLoadOptions, getDefaultSaveOptions, getDOMHelper, getEObjectToExtensionMap, getEObjectToIDMap, getID, getIDToEObjectMap, load, load, save, save, setDoctypeInfo, setEncoding, setUseZip, useZip
 
Methods inherited from interface org.eclipse.emf.ecore.resource.Resource
delete, getAllContents, getEObject, getErrors, getResourceSet, getTimeStamp, getURI, getURIFragment, getWarnings, isLoaded, isTrackingModification, load, save, setModified, setTimeStamp, setTrackingModification, setURI, unload
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eDeliver, eSetDeliver
 

Constructor Detail

JpaXmlResource

public JpaXmlResource(org.eclipse.emf.common.util.URI uri,
                      org.eclipse.wst.common.internal.emf.resource.Renderer renderer,
                      org.eclipse.core.runtime.content.IContentType contentType,
                      org.eclipse.wst.common.internal.emf.resource.Translator rootTranslator)
Method Detail

getContentType

public org.eclipse.core.runtime.content.IContentType getContentType()

getVersion

public java.lang.String getVersion()

eNotify

public void eNotify(org.eclipse.emf.common.notify.Notification notification)
Override to fire notification only when:

Specified by:
eNotify in interface org.eclipse.emf.common.notify.Notifier
Overrides:
eNotify in class org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl

getDoctype

public java.lang.String getDoctype()
only applicable for DTD-based files

Specified by:
getDoctype in interface org.eclipse.wst.common.internal.emf.resource.TranslatorResource

getRootTranslator

public org.eclipse.wst.common.internal.emf.resource.Translator getRootTranslator()
Specified by:
getRootTranslator in interface org.eclipse.wst.common.internal.emf.resource.TranslatorResource

getRootObject

public JpaRootEObject getRootObject()
Specified by:
getRootObject in interface org.eclipse.wst.common.internal.emf.resource.IRootObjectResource
Specified by:
getRootObject in interface org.eclipse.wst.common.internal.emf.resource.TranslatorResource
Overrides:
getRootObject in class org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl

getEntityResolver

public org.xml.sax.EntityResolver getEntityResolver()
Specified by:
getEntityResolver in interface org.eclipse.wst.common.internal.emf.resource.TranslatorResource
Overrides:
getEntityResolver in class org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl

fileExists

public boolean fileExists()

getFile

public org.eclipse.core.resources.IFile getFile()

getProject

public org.eclipse.core.resources.IProject getProject()

modify

public void modify(java.lang.Runnable runnable)

toString

public java.lang.String toString()
Overrides:
toString in class org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl

getResourceType

public JpaResourceType getResourceType()
Description copied from interface: JpaResourceModel
Return the resource type of the model. This may potentially change. Return null if it cannot be determined, the content type or version is null.

Specified by:
getResourceType in interface JpaResourceModel

addResourceModelListener

public void addResourceModelListener(JpaResourceModelListener listener)
Description copied from interface: JpaResourceModel
Changes to the resource model result in events. In particular, the JPA project performs an "update" whenever a resource model changes.

Specified by:
addResourceModelListener in interface JpaResourceModel

removeResourceModelListener

public void removeResourceModelListener(JpaResourceModelListener listener)
Specified by:
removeResourceModelListener in interface JpaResourceModel
See Also:
#addResourceModelListener(ResourceModelListener)

eAdapters

public org.eclipse.emf.common.util.EList<org.eclipse.emf.common.notify.Adapter> eAdapters()
Specified by:
eAdapters in interface org.eclipse.emf.common.notify.Notifier
Overrides:
eAdapters in class org.eclipse.wst.common.internal.emf.resource.ReferencedXMIResourceImpl

getContents

public org.eclipse.emf.common.util.EList<org.eclipse.emf.ecore.EObject> getContents()
Specified by:
getContents in interface org.eclipse.emf.ecore.resource.Resource
Overrides:
getContents in class org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl