Class TextResourceImpl

  • All Implemented Interfaces:
    ITextResource, org.eclipse.emf.common.notify.Notifier, org.eclipse.emf.ecore.resource.Resource, org.eclipse.emf.ecore.resource.Resource.Internal

    public abstract class TextResourceImpl
    extends org.eclipse.emf.ecore.resource.impl.ResourceImpl
    implements ITextResource
    Базовый абстрактный класс, предназначенный для наследования реализациями интерфейса Resource (EMF-ресурс), использующими текстовое (не XML/XMI) представление модели.
    • 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 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
      TextResourceImpl​(org.eclipse.emf.common.util.URI uri)
      Конструктор
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected abstract ITextParser createParser​(InputStream inputStream, IDiagnosticReporter reporter)
      Создание парсера ITextParser, выполняющего преобразование текстового представления модели в EMF-представление.
      protected void doLoad​(InputStream inputStream, Map<?,​?> options)  
      INode getRootNode()
      Корневой узел синтаксического дерева, полученного при разборе текстового представления модели.
      Корневой узел не может быть null.
      • Methods inherited from class org.eclipse.emf.ecore.resource.impl.ResourceImpl

        addModificationTrackingAdapters, attached, attachedHelper, basicSetResourceSet, createModificationTrackingAdapter, delete, detached, detachedHelper, doSave, doUnload, getAllContents, getAllProperContents, getAllProperContents, getContents, getDefaultURIConverter, getEObject, getEObject, getEObjectByID, getEObjectForURIFragmentRootSegment, getErrors, getIDForEObject, getIntrinsicIDToEObjectMap, getResourceSet, getTimeStamp, getUnloadingContents, getURI, getURIConverter, getURIFragment, getURIFragmentRootSegment, getWarnings, handleLoadResponse, handleSaveResponse, isAttachedDetachedHelperRequired, 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
      • Methods inherited from interface org.eclipse.emf.ecore.resource.Resource

        delete, getAllContents, getContents, getEObject, getErrors, getResourceSet, getTimeStamp, getURI, getURIFragment, getWarnings, isLoaded, isModified, isTrackingModification, load, load, save, save, setModified, setTimeStamp, setTrackingModification, setURI, unload
    • Constructor Detail

      • TextResourceImpl

        public TextResourceImpl​(org.eclipse.emf.common.util.URI uri)
        Конструктор
        Parameters:
        uri - URI ресурса
    • Method Detail

      • getRootNode

        public INode getRootNode()
        Description copied from interface: ITextResource
        Корневой узел синтаксического дерева, полученного при разборе текстового представления модели.
        Корневой узел не может быть null. Грамматика должна быть такой, что пустой текст соответствует корневому узлу, у которого нет дочерних узлов.
        Specified by:
        getRootNode in interface ITextResource
        Returns:
        корневой узел синтаксического дерева
      • doLoad

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

        protected abstract ITextParser createParser​(InputStream inputStream,
                                                    IDiagnosticReporter reporter)
        Создание парсера ITextParser, выполняющего преобразование текстового представления модели в EMF-представление.
        Этот метод должен быть определен в конкретных наследниках данного класса.
        Parameters:
        inputStream - входной поток, содержащий тектсовое представление модели
        reporter - объект, используемый для сбора диагностики
        Returns:
        созданный экземпляр ITextParser