Class JsonResource

  • All Implemented Interfaces:
    org.eclipse.emf.common.notify.Notifier, org.eclipse.emf.ecore.resource.Resource, org.eclipse.emf.ecore.resource.Resource.Internal
    Direct Known Subclasses:
    JsonUuidResource

    public class JsonResource
    extends org.eclipse.emf.ecore.resource.impl.ResourceImpl
    A Resource implementation that read and write it's content in JSON.
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.eclipse.emf.ecore.resource.impl.ResourceImpl

        org.eclipse.emf.ecore.resource.impl.ResourceImpl.ContentsEList<E extends Object & org.eclipse.emf.ecore.EObject>, org.eclipse.emf.ecore.resource.impl.ResourceImpl.ModificationTrackingAdapter
      • Nested classes/interfaces inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl

        org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EAdapterList<E extends Object & org.eclipse.emf.common.notify.Adapter>, org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EObservableAdapterList, org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EScannableAdapterList
      • 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 
      Modifier and Type Field Description
      protected static Map<org.eclipse.emf.ecore.EObject,​String> DETACHED_EOBJECT_TO_ID_MAP  
      • Fields inherited from class org.eclipse.emf.ecore.resource.impl.ResourceImpl

        contents, defaultDeleteOptions, defaultLoadOptions, defaultSaveOptions, errors, intrinsicIDToEObjectMap, isLoaded, isLoading, isModified, modificationTrackingAdapter, resourceSet, timeStamp, unloadingContents, uri, warnings
      • Fields inherited from class org.eclipse.emf.common.notify.impl.NotifierImpl

        eAdapters, EDELIVER, eFlags, ELAST_NOTIFIER_FLAG
      • Fields inherited from interface org.eclipse.emf.ecore.resource.Resource

        OPTION_CIPHER, OPTION_LINE_DELIMITER, OPTION_LINE_DELIMITER_UNSPECIFIED, 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

      Constructors 
      Constructor Description
      JsonResource​(org.eclipse.emf.common.util.URI uri)  
      JsonResource​(org.eclipse.emf.common.util.URI uri, com.fasterxml.jackson.databind.ObjectMapper mapper)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void attachedHelper​(org.eclipse.emf.ecore.EObject eObject)  
      protected void detachedHelper​(org.eclipse.emf.ecore.EObject eObject)  
      protected void doLoad​(InputStream inputStream, Map<?,​?> options)  
      protected void doSave​(OutputStream outputStream, Map<?,​?> options)  
      protected org.eclipse.emf.ecore.EObject getEObjectByID​(String id)  
      Map<org.eclipse.emf.ecore.EObject,​String> getEObjectToIDMap()  
      String getID​(org.eclipse.emf.ecore.EObject eObject)  
      Map<String,​org.eclipse.emf.ecore.EObject> getIDToEObjectMap()  
      String getURIFragment​(org.eclipse.emf.ecore.EObject eObject)  
      protected boolean isAttachedDetachedHelperRequired()  
      void setID​(org.eclipse.emf.ecore.EObject eObject, String id)  
      void setObjectMapper​(com.fasterxml.jackson.databind.ObjectMapper mapper)  
      protected boolean useIDAttributes()  
      protected boolean useIDs()  
      protected boolean useUUIDs()  
      • Methods inherited from class org.eclipse.emf.ecore.resource.impl.ResourceImpl

        addModificationTrackingAdapters, attached, basicSetResourceSet, createModificationTrackingAdapter, delete, detached, doUnload, getAllContents, getAllProperContents, getAllProperContents, getContents, getDefaultURIConverter, getEObject, getEObject, getEObjectForURIFragmentRootSegment, getErrors, getIDForEObject, getIntrinsicIDToEObjectMap, getResourceSet, getTimeStamp, getUnloadingContents, getURI, getURIConverter, getURIFragmentRootSegment, getWarnings, handleLoadResponse, handleSaveResponse, isContentZipEntry, isLoaded, isLoading, isModified, isTrackingModification, load, load, mergeMaps, newContentZipEntry, removeModificationTrackingAdapters, save, save, saveOnlyIfChangedWithFileBuffer, saveOnlyIfChangedWithMemoryBuffer, setIntrinsicIDToEObjectMap, setLoaded, setModified, setTimeStamp, setTrackingModification, setURI, supportIDRelativeURIFragmentPaths, toKeyString, toString, unload, unloaded, useZip
      • Methods inherited from class org.eclipse.emf.common.notify.impl.NotifierImpl

        eAdapters, eBasicAdapters, eDeliver, eSetDeliver
      • Methods inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl

        eBasicAdapterArray, eBasicHasAdapters, eNotificationRequired, eNotify
      • Methods inherited from interface org.eclipse.emf.common.notify.Notifier

        eAdapters, eDeliver, eNotify, eSetDeliver
    • Field Detail

      • DETACHED_EOBJECT_TO_ID_MAP

        protected static final Map<org.eclipse.emf.ecore.EObject,​String> DETACHED_EOBJECT_TO_ID_MAP
    • Constructor Detail

      • JsonResource

        public JsonResource​(org.eclipse.emf.common.util.URI uri,
                            com.fasterxml.jackson.databind.ObjectMapper mapper)
      • JsonResource

        public JsonResource​(org.eclipse.emf.common.util.URI uri)
    • Method Detail

      • setObjectMapper

        public void setObjectMapper​(com.fasterxml.jackson.databind.ObjectMapper mapper)
      • isAttachedDetachedHelperRequired

        protected boolean isAttachedDetachedHelperRequired()
        Overrides:
        isAttachedDetachedHelperRequired in class org.eclipse.emf.ecore.resource.impl.ResourceImpl
      • useIDs

        protected boolean useIDs()
      • useIDAttributes

        protected boolean useIDAttributes()
      • useUUIDs

        protected boolean useUUIDs()
      • getID

        public String getID​(org.eclipse.emf.ecore.EObject eObject)
      • getEObjectByID

        protected org.eclipse.emf.ecore.EObject getEObjectByID​(String id)
        Overrides:
        getEObjectByID in class org.eclipse.emf.ecore.resource.impl.ResourceImpl
      • getURIFragment

        public String getURIFragment​(org.eclipse.emf.ecore.EObject eObject)
        Specified by:
        getURIFragment in interface org.eclipse.emf.ecore.resource.Resource
        Overrides:
        getURIFragment in class org.eclipse.emf.ecore.resource.impl.ResourceImpl
      • setID

        public void setID​(org.eclipse.emf.ecore.EObject eObject,
                          String id)
      • attachedHelper

        protected void attachedHelper​(org.eclipse.emf.ecore.EObject eObject)
        Overrides:
        attachedHelper in class org.eclipse.emf.ecore.resource.impl.ResourceImpl
      • detachedHelper

        protected void detachedHelper​(org.eclipse.emf.ecore.EObject eObject)
        Overrides:
        detachedHelper in class org.eclipse.emf.ecore.resource.impl.ResourceImpl
      • getIDToEObjectMap

        public Map<String,​org.eclipse.emf.ecore.EObject> getIDToEObjectMap()
      • getEObjectToIDMap

        public Map<org.eclipse.emf.ecore.EObject,​String> getEObjectToIDMap()
      • doLoad

        protected void doLoad​(InputStream inputStream,
                              Map<?,​?> options)
                       throws IOException
        Overrides:
        doLoad in class org.eclipse.emf.ecore.resource.impl.ResourceImpl
        Throws:
        IOException
      • doSave

        protected void doSave​(OutputStream outputStream,
                              Map<?,​?> options)
                       throws IOException
        Overrides:
        doSave in class org.eclipse.emf.ecore.resource.impl.ResourceImpl
        Throws:
        IOException