Class QlResource

java.lang.Object
org.eclipse.emf.common.notify.impl.BasicNotifierImpl
org.eclipse.emf.common.notify.impl.NotifierImpl
org.eclipse.emf.ecore.resource.impl.ResourceImpl
org.eclipse.xtext.resource.XtextResource
org.eclipse.xtext.linking.lazy.LazyLinkingResource
org.eclipse.xtext.resource.persistence.StorageAwareResource
org.eclipse.xtext.resource.DerivedStateAwareResource
com._1c.g5.v8.dt.ql.resource.QlResource
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:
QlDcsResource

public class QlResource extends org.eclipse.xtext.resource.DerivedStateAwareResource
Special DerivedStateAwareResource for QL language. This class has logic for clearing IQlCachedScopeProvider after resolveLazyCrossReferences(CancelIndicator)
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.eclipse.xtext.linking.lazy.LazyLinkingResource

    org.eclipse.xtext.linking.lazy.LazyLinkingResource.CyclicLinkingException, org.eclipse.xtext.linking.lazy.LazyLinkingResource.DiagnosticMessageContext

    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 Boolean
    Special flag says that AliasComputer need pre phase - collect all unique names of alias for select field and sources in query.

    Fields inherited from class org.eclipse.xtext.resource.DerivedStateAwareResource

    fullyInitialized, isInitializing

    Fields inherited from class org.eclipse.xtext.resource.persistence.StorageAwareResource

    UNRESOLVABLE_FRAGMENT

    Fields inherited from class org.eclipse.xtext.linking.lazy.LazyLinkingResource

    CYCLIC_LINKING_DECTECTION_COUNTER_LIMIT, cyclicLinkingDectectionCounterLimit, resolving, UNRESOLVEABLE_PROXIES_KEY

    Fields inherited from class org.eclipse.xtext.resource.XtextResource

    isUpdating, operationCanceledManager, OPTION_ENCODING, OPTION_FORMAT, OPTION_RESOLVE_ALL, OPTION_SERIALIZATION_OPTIONS

    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
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    addLazyProxyInformation(org.eclipse.emf.ecore.EObject obj, org.eclipse.emf.ecore.EReference ref, org.eclipse.xtext.nodemodel.INode node)
    Methods copy from LazyLinkingResource.
    void
    Methods copy from LazyLinkingResource.
    protected org.eclipse.emf.ecore.EObject
    getEObject(String uriFragment, org.eclipse.xtext.util.Triple<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EReference,org.eclipse.xtext.nodemodel.INode> triple)
     
    org.eclipse.xtext.util.Triple<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EReference,org.eclipse.xtext.nodemodel.INode>
    Methods copy from LazyLinkingResource.
    boolean
    Methods copy from LazyLinkingResource and change So QuerySchema process in emf command operation information about proxy in undo/redo operation is not actual, we need change proxyInformation - add null for unknown index.
    boolean
    Checks if the parent scope introspection mode is enabled
    boolean
    Checks that AliasComputer need pre phase - collect all unique names of alias for select field and sources in query.
    org.eclipse.xtext.util.Triple<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EReference,org.eclipse.xtext.nodemodel.INode>
    Methods copy from LazyLinkingResource.
    void
    resolveLazyCrossReferences(org.eclipse.xtext.util.CancelIndicator mon)
     
    void
    setParentScopeAware(boolean parentScopeAware)
    Sets/Resets the parent scope introspection mode

    Methods inherited from class org.eclipse.xtext.resource.DerivedStateAwareResource

    clearInternalState, discardDerivedState, doDiscardDerivedState, doGetContents, doUnload, getContents, getEObjectForURIFragmentRootSegment, getUnloadingContents, getURIFragmentRootSegment, installDerivedState, isFullyInitialized, isInitializing, setDerivedStateComputer, setFullyInitialized, updateInternalState, updateInternalState

    Methods inherited from class org.eclipse.xtext.resource.persistence.StorageAwareResource

    getEObject, getPortableURIs, getResourceDescription, getResourceStorageFacade, getUnresolvableURIFragments, isLoadedFromStorage, load, loadFromStorage, setIsLoadedFromStorage, setResourceDescription

    Methods inherited from class org.eclipse.xtext.linking.lazy.LazyLinkingResource

    createAndAddDiagnostic, createAndAddDiagnostic, createDiagnostic, createDiagnosticMessage, createDiagnosticMessageContext, doLinking, doLoad, doResolveLazyCrossReference, getDiagnosticList, getDiagnosticMessageProvider, getEncoder, getLazyProxyInformation, getLinkingHelper, getLinkingService, getReferences, handleCyclicResolution, isEagerLinking, isPotentialLazyCrossReference, isUnresolveableProxyCacheable, markUnresolvable, removeDiagnostic, resolveLazyCrossReference, setDiagnosticMessageProvider, setEagerLinking, setEncoder, setLinkingHelper, setLinkingService

    Methods inherited from class org.eclipse.xtext.resource.XtextResource

    addSyntaxDiagnostic, addSyntaxErrors, basicGetEObject, clearCache, clearErrorsAndWarnings, createReader, doSave, getCache, getConcreteSyntaxValidator, getEncoding, getEntryPoint, getFragmentProvider, getLanguageName, getLinker, getModificationStamp, getParser, getParseResult, getResourceServiceProvider, getSerializer, getUnloader, getURIFragment, isValidationDisabled, reattachModificationTracker, relink, reparse, setCache, setEncodingFromOptions, setEntryPoint, setFragmentProvider, setInjectedParser, setLanguageName, setLinker, setModificationStamp, setParser, setParseResult, setResourceServiceProvider, setSerializer, setUnloader, setValidationDisabled, unload, update, validateConcreteSyntax

    Methods inherited from class org.eclipse.emf.ecore.resource.impl.ResourceImpl

    addModificationTrackingAdapters, attached, attachedHelper, basicSetResourceSet, createModificationTrackingAdapter, delete, detached, detachedHelper, getAllContents, getAllProperContents, getAllProperContents, getDefaultURIConverter, getEObject, getEObjectByID, getErrors, getIDForEObject, getIntrinsicIDToEObjectMap, getResourceSet, getTimeStamp, getURI, getURIConverter, getWarnings, handleLoadResponse, handleSaveResponse, isAttachedDetachedHelperRequired, isContentZipEntry, isLoaded, isLoading, isModified, isTrackingModification, 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 class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.eclipse.emf.common.notify.Notifier

    eAdapters, eDeliver, eNotify, eSetDeliver
  • Field Details

    • preComputeAnnounceAlias

      protected Boolean preComputeAnnounceAlias
      Special flag says that AliasComputer need pre phase - collect all unique names of alias for select field and sources in query.
  • Constructor Details

    • QlResource

      public QlResource()
  • Method Details

    • resolveLazyCrossReferences

      public void resolveLazyCrossReferences(org.eclipse.xtext.util.CancelIndicator mon)
      Overrides:
      resolveLazyCrossReferences in class org.eclipse.xtext.linking.lazy.LazyLinkingResource
    • addLazyProxyInformation

      public int addLazyProxyInformation(org.eclipse.emf.ecore.EObject obj, org.eclipse.emf.ecore.EReference ref, org.eclipse.xtext.nodemodel.INode node)
      Methods copy from LazyLinkingResource. So in hasLazyProxyInformation(int) we should change proxyInformation collection
      Overrides:
      addLazyProxyInformation in class org.eclipse.xtext.linking.lazy.LazyLinkingResource
    • hasLazyProxyInformation

      public boolean hasLazyProxyInformation(int idx)
      Methods copy from LazyLinkingResource and change So QuerySchema process in emf command operation information about proxy in undo/redo operation is not actual, we need change proxyInformation - add null for unknown index.
      Overrides:
      hasLazyProxyInformation in class org.eclipse.xtext.linking.lazy.LazyLinkingResource
    • getLazyProxyInformation

      public org.eclipse.xtext.util.Triple<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EReference,org.eclipse.xtext.nodemodel.INode> getLazyProxyInformation(int idx)
      Methods copy from LazyLinkingResource. So in hasLazyProxyInformation(int) we should change proxyInformation collection
      Overrides:
      getLazyProxyInformation in class org.eclipse.xtext.linking.lazy.LazyLinkingResource
    • removeLazyProxyInformation

      public org.eclipse.xtext.util.Triple<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EReference,org.eclipse.xtext.nodemodel.INode> removeLazyProxyInformation(int idx)
      Methods copy from LazyLinkingResource. So in hasLazyProxyInformation(int) we should change proxyInformation collection
      Overrides:
      removeLazyProxyInformation in class org.eclipse.xtext.linking.lazy.LazyLinkingResource
    • clearLazyProxyInformation

      public void clearLazyProxyInformation()
      Methods copy from LazyLinkingResource. So in hasLazyProxyInformation(int) we should change proxyInformation collection
      Overrides:
      clearLazyProxyInformation in class org.eclipse.xtext.linking.lazy.LazyLinkingResource
    • preComputeAnnounceAlias

      public boolean preComputeAnnounceAlias()
      Checks that AliasComputer need pre phase - collect all unique names of alias for select field and sources in query.
      Returns:
      true if AliasComputer needs special pre phase part, false otherwise
    • isParentScopeAware

      public boolean isParentScopeAware()
      Checks if the parent scope introspection mode is enabled
      Returns:
      True if the parent scope introspection mode is enabled
    • setParentScopeAware

      public void setParentScopeAware(boolean parentScopeAware)
      Sets/Resets the parent scope introspection mode
      Parameters:
      parentScopeAware - The mode to set
    • getV8Project

      public IV8Project getV8Project()
      Returns:
      IV8Project, never null
    • getEObject

      protected org.eclipse.emf.ecore.EObject getEObject(String uriFragment, org.eclipse.xtext.util.Triple<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EReference,org.eclipse.xtext.nodemodel.INode> triple) throws AssertionError
      Overrides:
      getEObject in class org.eclipse.xtext.linking.lazy.LazyLinkingResource
      Throws:
      AssertionError