Skip to main content

Class AstVariableNode

The AstVariableNode type corresponds directly to a task variable in SQL Server Integration Services.

Namespace: Varigence.Languages.Biml.Task

Assembly: Biml.dll

C#


public class AstVariableNode : AstVariableBaseNode, IBindableItem, IGetJsonProvider, INamedNode, IReferenceableItem, IFrameworkItem, IValidationInfo, INamedItem

Inheritance AstNode

  • Implements

    Varigence.Utility.Collections.IVulcanCollectionParent, Varigence.Utility.ComponentModel.IVulcanNotifyPropertyChanged, Varigence.Utility.ComponentModel.IPropertyChangeNotificationTarget, System.ComponentModel.INotifyPropertyChanged, Varigence.Utility.Xml.IXObjectMappingProvider, System.ComponentModel.IDataErrorInfo, Varigence.Utility.Collections.IScopedNameIndexable,

Constructors

ConstructorsDescription
AstVariableNode(IFrameworkItem)Initializes a new instance of the AstVariableNode class with the specified parent node.

Fields

FieldsDescription
ScopedNamePrefixBackingStore
IsScopeImported

Properties

PropertiesDescription
EvaluateAsExpressionThis value specifies whether the string value provided in the Value property and any subsequent value setting should be preprocessed before use. If true, the Value property will be treated as an expression using the SSIS expression syntax.
EvaluateAsExpressionDefaultValueGets the default value for the EvaluateAsExpression property
FriendlyTypeNameStaticGets the friendly name of the type of this node
InheritFromPackageParentConfigurationStringThis value specifies configuration information necessary to map the specified parent package variable value onto this variable value.
InheritFromPackageParentConfigurationStringDefaultValueGets the default value for the InheritFromPackageParentConfigurationString property
IsSystemVariableGets or sets whether this is a system variable, as opposed to a user defined variable.
NamespaceThis value specifies the namespace to use for the variable definition. A common choice is 'User'.
NamespaceDefaultValueGets the default value for the Namespace property
QualifiedNameGets the fully qualified SSIS name for this variable.
RaiseChangedEventThis value specifies whether an event will be raised that will cause registered event handlers to execute when the value of this variable changes.
RaiseChangedEventDefaultValueGets the default value for the RaiseChangedEvent property
ReadOnlyThis value specifies whether the initial variable value is read-only.
ReadOnlyDefaultValueGets the default value for the ReadOnly property
SsisSafeNameReturns a version of the Name that has been cleaned of invalid characters for SSIS.
SsisSafeScopedNameReturns a version of the ScopedName that has been cleaned of invalid characters for SSIS.
ValueThis value specifies a default or initial value for the variable. The value string will be automatically converted to the data type specified in DataType if possible. If EvaluateAsExpression is set to true, then the SQL Server Integration Services (SSIS) expression for the parent variable shoud be specificed in this property.
DataTypeThis value specifies the type of the variable selected from the list of variable types supported by the system.
RawXmlValueThis value specifies a default or initial value for the variable. The value string will be automatically converted to the data type specified in TypeCode if possible. If EvaluateAsExpression is set to true, then the SQL Server Integration Services (SSIS) expression for the parent variable shoud be specificed in this property.
IncludeInDebugDumpThis value specifies whether the value of this variable will be included in a debug dump.
IdAllows the developer to specify a unique identifier (GUID) for the variable. This can be used to retain a consistent ID between builds.
RawXmlValueDefaultValueGets the default value for the RawXmlValue property
IncludeInDebugDumpDefaultValueGets the default value for the IncludeInDebugDump property
IdDefaultValueGets the default value for the Id property
ScopedNameGets the scoped name which can be used to uniquely identify this object among other objects of its type
SymbolTableGets a reference to the symbol table that stores a reference to this and all other named objects in the project
NameSpecifies the name of the object. This name can be used to reference this object from anywhere else in the program.
ReferencesGets collection of FrameworkItemReference objects, which track rich information about the properties that hold references to this node.
NameDefaultValueGets the default value for the Name property
Guid
AnnotationsThis is a collection of annotation items that can be used to specify documentation, tags, or other information. Annotations are particularly useful for storing information about nodes that can be used by BimlScript code.
ObjectTagThis property provides a general purpose storage mechanism for .NET objects to be associated with AstNode objects. It supplements the annotation system, which is intended for use with string-based metadata.
BimlFileThis value specifies the BimlFile in which the Biml code that defines AstNode resides.
ItemLabelGets a label that can be used to identify this node
ParentItemThis value specifies the parent of the current node. All nodes must have a valid parent in the Biml framework, except for the root node.

Methods

MethodsDescription
BindingScopeBoundaries()Retrieves the permitted scope boundaries to bind references from this node.
Duplicate()Creates a duplicate of the current node
Duplicate(IFrameworkItem)Creates a duplicate of the current node with the specified parent item
GetDefaultValue(String)Retrieves the default value for the property with the name propertyName
GetDefaultValue<T>(String)Retrieves the default value for the property with the name propertyName
GetSchemaLocalName()Retrieves the local XML element name that corresponds to this node in Biml code.
StructureEquals(Object)Compares this node to the provided object to determine if all defined children and references are equal.
ToString()Returns a string that represents the current object. In this case, it is the QualifiedName of the variable.
ParseSelf(XElement, ParserContext)
GetBimlChildFragment(CulturedStringBuilder, Int32)
HasAnyBimlChildNodes()
OnScopedNameChanged(String, String)
OnItemLabelChanged(String, String)
OnNameChanging(String, String)
OnNameChanged(String, String)
AddScopedNameChangedEventListener(IReferenceableItem, EventHandler<VulcanPropertyChangedEventArgs>)Adds the scoped name changed event handler to the specified referenceable item.
RemoveScopedNameChangedEventListener(IReferenceableItem, EventHandler<VulcanPropertyChangedEventArgs>)Removes the scoped name changed event handler from the specified referenceable item.
FirstChildOfType<TChild>()Gets the first defined descendant node of the specified type
RemoveFromParent()Removes this node definition from its parent
DefinedAstNodes()Retrieves a collection of nodes that have been defined as direct children of the current node.
GetJson()Generates a JavaScript Object Notation (JSON) representation of the current node
GetExternalJson()Generates a JavaScript Object Notation (JSON) representation of the current node
GetJson(Boolean, Boolean, Boolean, Boolean, Boolean)Generates a JavaScript Object Notation (JSON) representation of the current node
GetXObjectName()Gets the fully qualified XML element name for this node in the code document.
FirstParent<TAstNode>()Retrieves the first parent or ancestor node of the specified type
FirstParent<TAstNode>(Type)Retrieves the first parent or ancestor node of the specified type with the specified custom attribute type
FirstThisOrParent<TAstNode>()Retrieves the first parent or ancestor node of the specified type, including this node
IsDirectAncestor(IFrameworkItem)Retrieves a value indicating whether the specified node is a direct ancestor of this node.
AncestorDistance(IFrameworkItem)Retrieves the number of steps between this node and the nearest shared ancestor with the specified relative node.
FirstThisOrParent<TAstNode>(Type)Retrieves the first parent or ancestor node (including this node) of the specified type with the specified custom attribute type
AllDefinedSuccessors()Retrieves the collection of all nodes defined as a child of this or any successor node or the current node
AllDefinedSuccessors(Boolean)Retrieves the collection of all nodes defined as a child of this or any successor node or optionally the current node
OnNotificationTargetPropertyChanged(String)
OnScopeBoundaryChanged(IScopeBoundary, IScopeBoundary)
AddParseableChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
RemoveParseableChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
AddScopeBoundaryChangedEventListener(IFrameworkItem, EventHandler<VulcanPropertyChangedEventArgs>)
RemoveScopeBoundaryChangedEventListener(IFrameworkItem, EventHandler<VulcanPropertyChangedEventArgs>)
AddParsePendingChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
RemoveParsePendingChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
AddFromTemplateChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
RemoveFromTemplateChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
GetAllItemsReferencedByDefinedSuccessors()Builds a list of all items referenced by this node and its successors.
Each tuple in the returned list represents a FrameworkItemReference.
The first item is the ReferencingItem, the second item is the property name, and the third item is the ReferencedItem.
ParseChild(XElement, ParserContext)
ParseNameValueMapping(XElement)
BindReference(SymbolTable, String, Boolean, String, Int32, Boolean)