Class QlDerivedStateComputer

java.lang.Object
com._1c.g5.v8.dt.ql.resource.QlDerivedStateComputer
All Implemented Interfaces:
org.eclipse.xtext.resource.IDerivedStateComputer
Direct Known Subclasses:
QlDcsDerivedStateComputer, RightQlDerivedStateComputer

public class QlDerivedStateComputer extends Object implements org.eclipse.xtext.resource.IDerivedStateComputer
Implementation IDerivedStateComputer for Ql language
  • Constructor Details

    • QlDerivedStateComputer

      public QlDerivedStateComputer()
  • Method Details

    • installDerivedState

      public void installDerivedState(org.eclipse.xtext.resource.DerivedStateAwareResource resource, boolean preLinkingPhase)
      Specified by:
      installDerivedState in interface org.eclipse.xtext.resource.IDerivedStateComputer
    • discardDerivedState

      public void discardDerivedState(org.eclipse.xtext.resource.DerivedStateAwareResource resource)
      Specified by:
      discardDerivedState in interface org.eclipse.xtext.resource.IDerivedStateComputer
    • createDbViewForEachSource

      protected List<DbViewDef> createDbViewForEachSource(QuerySchemaSource source, QlDerivedStateComputer.NotAllowedNameForTempTableProvider notAllowedNamesForTempTableProvider, List<DbViewDef> earlierCreatedDbViewSource)
      Creates DbView for each source in 'from' section
      Parameters:
      source - QuerySchemaSource
      notAllowedNamesForTempTableProvider - provider for not allowed names for DbViewDescriptionTempTable, cannot be null
      earlierCreatedDbViewSource - list of earlier created DbViewDef from source section, can't be null
      Returns:
      list of DbViewDef computed by QuerySchemaSource
    • computeDbView

      protected void computeDbView(AbstractQuerySchemaQuery query, org.eclipse.xtext.resource.DerivedStateAwareResource resource)
      Computes all DbView for one query
      Parameters:
      queries - processing QuerySchemaSelectQuery
      resource - ql grammar DerivedStateAwareResource
    • getAliasComputer

      protected AliasComputer getAliasComputer()
      Gets object for computing alias
      Returns:
      object for computing alias
      See Also:
    • createDbViewForEachQuery

      protected DbViewDef createDbViewForEachQuery(QuerySchemaSelectQuery query)
      Creates DbView for select query
      Parameters:
      query - QuerySchemaSelectQuery processing query
      Returns:
      DbViewDef created DbView
    • createProxyForDbView

      protected void createProxyForDbView(org.eclipse.emf.ecore.EObject object)
      Creates proxy for all elements which have DbViewElement
      Parameters:
      object - object for creating proxies, can't be null
    • discardDbViewForEachQuery

      protected void discardDbViewForEachQuery(AbstractQuerySchemaQuery eachQuery)
      Discards DbView for each query
      Parameters:
      eachQuery - QuerySchemaSelectQuery
    • discardDbViewForEachSource

      protected void discardDbViewForEachSource(QuerySchemaSource source)
      Discards DbView for each source
      Parameters:
      source - QuerySchemaSource
    • getAllDbViewNamesWithSinglePart

      protected Collection<CaseInsensitiveString> getAllDbViewNamesWithSinglePart(org.eclipse.emf.ecore.EObject context)
      Gets all DbView names with single part from scope by actual context
      Parameters:
      context - actual context for getting scope of DbViewElement
      Returns:
      collection of DbView names with single part, never null
    • createDbviewDescriptionTempTable

      protected void createDbviewDescriptionTempTable(CaseInsensitiveString name, QuerySchemaTable table)
      Parameters:
      name - name of creating DbViewDescriptionTempTable, can't be null
      table - actual QuerySchemaTable, can't be null