Click or drag to resize

IGenerator Interface

Interface for generator instances which execute a given set of tasks.

Namespace:  SD.LLBLGen.Pro.ApplicationCore
Assembly:  SD.LLBLGen.Pro.ApplicationCore (in SD.LLBLGen.Pro.ApplicationCore.dll) Version: 5.7.0.0 (5.7.0)
Syntax
public interface IGenerator

The IGenerator type exposes the following members.

Properties
  NameDescription
Public propertyActionProcedures
Gets the action procedures stored in the SPCalls set. It consults the project for meta-data and assumes a proc is valid and thus is either an action proc on all targets or a rertieval proc on all targets
Public propertyActiveDerivedModelDefinition
Gets the active derived model definition. If the generator isn't used for a derived model, this property returns null.
Public propertyActiveSourceElementsContainerName
Gets or sets the name of the active source elements container. This is the project name when the project property 'GroupUsage' is set to AsVisualGroupingMechanism. Otherwise it's the active group name.
Public propertyActiveSourceElementsContainerNameRaw
Gets or sets the ActiveSourceElementsContainerName value in raw form, without name correction. This variant is the direct name without any filtering on illegal characters, and therefore isn't suitable for creating type names.
Public propertyAlwaysBuildTemplatesUsingDebugBuild
Gets or sets a value indicating whether templates which have to be compiled into .NET code have to use debug build always (true) or leave it to their own settings (false).
Public propertyCatalogs
Gets or sets the catalogs to process with this generator
Public propertyCompilationResultsIncludeTemplatesPerDriverId
Gets the compilation results for include templates per driver id list. Values are pairs, where Value1 is the compilationresults object and Value2 is the name of the file which contains the template runner sourcecode (which was compiled and gave the compilation results stored in Value1)
Public propertyCompilationResultsTemplatesPerDriverId
Gets the compilation results for templates per driver id list. Values are pairs, where Value1 is the compilationresults object and Value2 is the name of the file which contains the template runner sourcecode (which was compiled and gave the compilation results stored in Value1)
Public propertyCompiledIncludeTemplateAssembliesPerDriverId
Gets the compiled include template assembly per driver id list.
Public propertyCompiledTemplateAssembliesPerDriverId
Gets the compiled template assembly per driver id.
Public propertyConfigurationSettings
the configuration settings of the current application instance.
Public propertyCycleCache
Defines the cache for the whole code generation cycle. Per ActiveSourceElementsContainerNameRaw used in a code gen task, the run queue cache is stored.
Public propertyDestinationRootFolder
Gets the destination root folder.
Public propertyDriverID
Gets or sets the driver ID to use to obtain meta-data from the project.
Public propertyEntities
Gets / sets the entities to process with the generator.
Public propertyLanguageToUse
The Language object to use
Public propertyLogLineHandler
The handler of the LogLineInApplicationOutputCallBack. Setting this property will allow the generator and any task or taskgroup to log text on the application output window.
Public propertyPerGroupQueueProcessingIfApplicable
When set to true, queue processing is performed per group if applicable (i.e. on entity model tasks, and if project setting for grouping is AsSeparateProjects). When false (default), the queue is processed once.
Public propertyPlatformToUse
Gets the platform to use.
Public propertyProjectDefinition
The complete definition of the project to generate. All necessary data can be obtained through the project instance returned by this property. This is the actual instance of the project and not a copy, because projects can be very large and the amount of objects to copy can be very big. Tasks are not the right instrument to change project data.
Public propertyRetrievalProcedures
Gets the retrieval procedures stored in the SPCalls set. It consults the project for meta-data and assumes a proc is valid and thus is either an action proc on all targets or a rertieval proc on all targets
Public propertyRootDerivedElements
Gets or sets the root derived elements to process with this generator.
Public propertyRootNamespaceToUse
Gets the root namespace to use.
Public propertyRunQueueCache
The cache with key-value pairs which is accessable for all performed tasks. The cache is never cleared by task performers, and can be used to cache information across task groups which do clear the TaskCache cache.
Public propertySPCalls
Gets / sets the sp calls to process with the generator.
Public propertyStartupPath
Gets the startup path of the application this generator is used in.
Public propertySubTaskProgressInitHandler
The handler of the SubTaskProgressInitCallBack. Setting this property will allow Start to reflect its current progress of subtasks executed within a general task in the progress viewer.
Public propertySubTaskProgressTaskCompletedHandler
The handler of the SubTaskProgressTaskCompletedCallBack. Setting this property will allow Start to reflect its current progress of subtasks executed within a general task in the progress viewer.
Public propertySubTaskProgressTaskStartHandler
The handler of the SubTaskProgressTaskStartCallBack. Setting this property will allow Start to reflect its current progress of subtasks executed within a general task in the progress viewer.
Public propertySystemTypeConverters
Gets the system type converters defined for this framework. Key is the Type converter instance type, value is the codeGeneratorData value specified with this type converter in the framework's .framework file.
Public propertyTargetFrameworkHolder
Gets or sets the target framework holder to use for this generator
Public propertyTaskCache
The cache with key-value pairs which is accessable for all performed tasks. The cache can be used to pass data (for example task results) to other tasks.
Public propertyTaskProgressInitHandler
The handler of the TaskProgressInitCallBack. Setting this property will allow Start to reflect its current progress of general tasks in the progress viewer.
Public propertyTaskProgressTaskCompletedHandler
The handler of the TaskProgressTaskCompletedCallBack. Setting this property will allow Start to reflect its current progress of general tasks in the progress viewer.
Public propertyTaskProgressTaskStartHandler
The handler of the TaskProgressTaskStartCallBack. Setting this property will allow Start to reflect its current progress of general tasks in the progress viewer.
Public propertyTasksResultLog
Gets the TasksResultLog lognode, which is the root node in the lognode tree to which logging is done by task performers.
Public propertyTasksToExecute
The complete set of tasks to execute by the generator. Use this tree to walk through the tasks to check if a given task has been succesfully completed.
Public propertyTemplateBindingsToUse
Gets the templatebindings to use, in the order in which they have to take precedence, starting with the top precedence taking templatebindings object.
Public propertyTemplateGroupToUse
Gets the template group to use.
Public propertyTvfCalls
Gets or sets the table valued function calls to process with the generator.
Public propertyTypedLists
Gets / sets typedLists to process with the generator.
Public propertyTypedViews
Gets / sets typedViews to process with the generator.
Public propertyValueTypes
Gets or sets the value type definitions to process with the generator.
Public propertyVSNetProjectFilesCreated
Gets the VS net project files created during the complete code cycle.
Top
Methods
  NameDescription
Public methodAddFilePairToDependentUponFilesCache
Adds the file pair to dependent upon files cache.
Public methodAddFileToDestinationFilenamesCache
Adds the file to destination filenames cache.
Public methodAddObsoleteFilesToDeleteMove
Adds the list specified as obsolete files, to be deleted or moved after the runqueue has been executed.
Public methodApplyElementSelectionRule
Applies the element selection rule specified on all the elements matching its scope and filters the elements out which result in false after applying the rule. This method alters the sets of elements, so use this method in combination of PushElementSets and PopElementSets.
Public methodClearDependentUponFilesCache
Clears the dependent upon files cache.
Public methodClearDestinationFilenamesCache
Clears the destination filenames cache.
Public methodCreateDependentUponStoreInCache
Creates the dependent upon store in cache under the key 'dependentUponFilenames', if it's not already there. The store is a dictionary(Of string, string) which has as key the filename of the dependening file and as value the filename of the file it depents upon.
Public methodCreateDestinationFilenamesStoreInCache
Creates the destination filenames store in cache under the key 'destinationFilenames' if it's not already there. The store is a List(Of string) object.
Public methodDeleteObsoleteFiles
Deletes (or moves, if the setting is switched off) all files added as 'obsolete' and which aren't generated through this generator. Call this method after the whole runqueue has been executed.
Public methodDriverSupportsRdbmsFunctionalityAspect
Checks whether the driver of the driver ID current set in this generator supports the aspect specified
Public methodGetCatalogsInScope
Gets the list of catalogs in scope of the current cycle the generator is executed for. The catalogs aren't sorted. If you want to process them in a given order a sort has to be applied after this method.
Public methodGetCompiledIncludeTemplatesAssemblyFromCache
Gets the compiled include templates assembly from cache for the active driverid
Public methodGetCompiledTemplatesAssemblyFromCache
Gets the compiled templates assembly from cache for the active driverid
Public methodGetDatabaseNameForDriverID
Gets the database name of the driver associated with the driver ID currently set in this generator
Public methodGetDatabaseNameForDriverID(String)
Gets the database name of the driver associated with the driver ID specified
Public methodGetDatabaseShortNameForDriverID
Gets the database short name of the driver associated with the driver ID currently set in this generator
Public methodGetDatabaseShortNameForDriverID(String)
Gets the database short name of the driver associated with the driver ID specified
Public methodGetDBNETProviderTypeForDbType
Gets the provider specific net type name to be used for type enums for the dbtype specified for the database with the driverid set in this generator.
Public methodGetDependentUponFilenamesStoreFromCache
Gets the dependent upon filenames store from the task cache.
Public methodGetDestinationFilenamesStoreFromCache
Gets the destination filenames store from the task cache.
Public methodGetDriverShortNameForDriverID
Gets the driver short name for the driver associated with the driver ID currently set in this generator
Public methodGetDriverShortNameForDriverID(String)
Gets the driver short name for the driver associated with the driver ID specified
Public methodGetExternalTypeNameForTypeIfAny
Gets the external type name for the type specified, if any, for the active database. It retrieves this from the target framework of the entity model, as everything derives from that. If no external type is defined for the type specified, it will return null, so the caller knows the type is to be treated as-is.
Public methodGetTemplateBindingsName
Gets the name of the template bindings the templateID has been defined in, taking into account the templateBindingsName specified and the language set)
Public methodGetTemplateFileContents(String)
Gets the template file contents for the templateID specified for the set platform - language. It will start with the templatebindings with the highest precedence and will choose the first templateID binding found for the platform - language combination.
Public methodGetTemplateFileContents(String, String)
Gets the template file contents for the templateID specified for the set platform - language and as specified in the templatebindings with the name specified.
Public methodGetTemplateFilename(String)
Gets the template filename for the first templateID encountered in the ordered list of templatebindings
Public methodGetTemplateFilename(String, String)
Gets the template filename for the templateID specified in the templatebindings specified.
Public methodGetUniqueRelationshipNameForRelationship
Gets the cached unique relationship name for relationship specified. The relationship has to be in scope of the generator
Public methodGetValueFromCycleCacheT
Gets the value from cycle cache. It uses the runqueueCacheKey to obtain the runqueue cache and the key to obtain the value in that runqueue cache.
Public methodGetValueFromRunQueueCacheT
Gets the value from the run queue cache for the key specified. If key is null, the default for T is returned.
Public methodPopDestinationRootFolder
Pops the destination root folder from the stack. If there's just one value left, no action is performed.
Public methodPopElementSets
Pops the element sets from internal stacks, if they were pushed onto these before using a PushElementSets call. If there are no pushed sets, this method is a no-op.
Public methodPopRootNamespaceToUse
Pops the root namespace to use from the stack. If there's just one value left, no action is performed.
Public methodProduceRealAttributeString
Produces the real attribute string to emit into the output based on the attribute string passed in and the current language specified.
Public methodPushElementSets
Pushes the element sets onto internal stacks so they're presevered: if the sets of elements (entities, typed lists etc.) are changed, after calling this method, they can be restored by calling PopElementSets().
Public methodPushNewDestinationRootFolder
Pushes the new destination root folder onto the stack of destination root folders. Using this method the DestinationRootFolder is set to a new value.
Public methodPushNewRootNamespaceToUse
Pushes the new root namespace to use onto the stack of rootnamespaces. Using this method the RootNamespaceToUse is set to a new value.
Public methodRemoveFileFromDestinationFilenamesCache
Removes the file from destination filenames cache.
Public methodRemoveFilePairFromDependentUponFilesCache
Removes the file pair from dependent upon files cache, with the key fromFile
Public methodSetCallBacks
Sets the call backs to use for this generator
Public methodStart
Starts the generation process. It executes the code generation task specified.
Public methodStoreCompilationResultsForCompiledIncludeTemplates
Stores the compilation results for include templates. Include templates are only compiled when used inside TDL templates
Public methodStoreCompilationResultsForCompiledTemplates
Stores the compilation results for compiled templates.
Public methodStoreCompiledIncludeTemplatesAssemblyInCache
Stores the compiled include templates assembly in cache.
Public methodStoreCompiledTemplatesAssemblyInCache
Stores the compiled templates assembly in cache.
Public methodStoreValueInRunQueueCache
Stores the value specified in run queue cache. If there's already a value for this key, it's overwritten.
Top
See Also