Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / CqlGeneration / ExtentCqlBlock.cs / 1305376 / ExtentCqlBlock.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Text; using System.Collections.Generic; using System.Data.Mapping.ViewGeneration.Structures; using System.Data.Common.Utils; using System.Data.Metadata.Edm; namespace System.Data.Mapping.ViewGeneration.CqlGeneration { // A class that corresponds to the leaf CQL Blocks in the CqlBlock tree internal class ExtentCqlBlock : CqlBlock { private static readonly ListEmptyChildren = new List (); #region Constructors // effects: Creates an Extent CqlBlock corresponding to // "extent" (the FROM part). SELECT is given by slots, WHERE by // whereClause and AS by blockAliasNum internal ExtentCqlBlock(EntitySetBase extent, CellQuery.SelectDistinct selectDistinct, SlotInfo[] slots, BoolExpression whereClause, CqlIdentifiers identifiers, int blockAliasNum) : base(slots, EmptyChildren, whereClause, identifiers, blockAliasNum) { m_extent = extent; m_nodeTableAlias = identifiers.GetBlockAlias(); m_selectDistinct = selectDistinct; } #endregion #region Fields private EntitySetBase m_extent; // The extent for which we have this block private string m_nodeTableAlias; CellQuery.SelectDistinct m_selectDistinct; #endregion #region Methods // effects: See CqlBlock.AsCql internal override StringBuilder AsCql(StringBuilder builder, bool isTopLevel, int indentLevel) { // The SELECT part GenerateProjectedtList(builder, indentLevel, m_nodeTableAlias, m_selectDistinct, false); // Get the FROM part builder.Append("FROM "); // Get the extent object in C-Space (if m_extent is an S space object) CqlWriter.AppendEscapedQualifiedName(builder, m_extent.EntityContainer.Name, m_extent.Name); builder.Append(" AS ") .Append(m_nodeTableAlias); // Get the WHERE part only when the expression is not simply TRUE if (false == BoolExpression.EqualityComparer.Equals(WhereClause, BoolExpression.True)) { StringUtil.IndentNewLine(builder, indentLevel); builder.Append("WHERE "); WhereClause.AsCql(builder, m_nodeTableAlias); } return builder; } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Text; using System.Collections.Generic; using System.Data.Mapping.ViewGeneration.Structures; using System.Data.Common.Utils; using System.Data.Metadata.Edm; namespace System.Data.Mapping.ViewGeneration.CqlGeneration { // A class that corresponds to the leaf CQL Blocks in the CqlBlock tree internal class ExtentCqlBlock : CqlBlock { private static readonly ListEmptyChildren = new List (); #region Constructors // effects: Creates an Extent CqlBlock corresponding to // "extent" (the FROM part). SELECT is given by slots, WHERE by // whereClause and AS by blockAliasNum internal ExtentCqlBlock(EntitySetBase extent, CellQuery.SelectDistinct selectDistinct, SlotInfo[] slots, BoolExpression whereClause, CqlIdentifiers identifiers, int blockAliasNum) : base(slots, EmptyChildren, whereClause, identifiers, blockAliasNum) { m_extent = extent; m_nodeTableAlias = identifiers.GetBlockAlias(); m_selectDistinct = selectDistinct; } #endregion #region Fields private EntitySetBase m_extent; // The extent for which we have this block private string m_nodeTableAlias; CellQuery.SelectDistinct m_selectDistinct; #endregion #region Methods // effects: See CqlBlock.AsCql internal override StringBuilder AsCql(StringBuilder builder, bool isTopLevel, int indentLevel) { // The SELECT part GenerateProjectedtList(builder, indentLevel, m_nodeTableAlias, m_selectDistinct, false); // Get the FROM part builder.Append("FROM "); // Get the extent object in C-Space (if m_extent is an S space object) CqlWriter.AppendEscapedQualifiedName(builder, m_extent.EntityContainer.Name, m_extent.Name); builder.Append(" AS ") .Append(m_nodeTableAlias); // Get the WHERE part only when the expression is not simply TRUE if (false == BoolExpression.EqualityComparer.Equals(WhereClause, BoolExpression.True)) { StringUtil.IndentNewLine(builder, indentLevel); builder.Append("WHERE "); WhereClause.AsCql(builder, m_nodeTableAlias); } return builder; } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TypeDescriptionProvider.cs
- __ComObject.cs
- ImpersonationContext.cs
- EventProviderWriter.cs
- namescope.cs
- FullTextBreakpoint.cs
- MimeAnyImporter.cs
- SelectedCellsChangedEventArgs.cs
- RequiredFieldValidator.cs
- FigureParaClient.cs
- RubberbandSelector.cs
- Panel.cs
- PropertyTabChangedEvent.cs
- FreezableOperations.cs
- ObjectDataSource.cs
- DataFormat.cs
- HuffmanTree.cs
- QueryExpr.cs
- GenericTypeParameterBuilder.cs
- RegexReplacement.cs
- CodeDomSerializer.cs
- CodeGen.cs
- StateWorkerRequest.cs
- BamlLocalizableResourceKey.cs
- ObjectDataProvider.cs
- DefaultSerializationProviderAttribute.cs
- UserInitiatedNavigationPermission.cs
- InsufficientExecutionStackException.cs
- DesignTimeVisibleAttribute.cs
- ResourceCodeDomSerializer.cs
- SmtpException.cs
- RegexRunner.cs
- SettingsBase.cs
- FontStyles.cs
- TextSpanModifier.cs
- XmlBindingWorker.cs
- AtomParser.cs
- WriterOutput.cs
- Dynamic.cs
- EncodingNLS.cs
- ParameterCollection.cs
- AssemblyResourceLoader.cs
- MouseButtonEventArgs.cs
- ProvidersHelper.cs
- Version.cs
- ImageDrawing.cs
- HostProtectionException.cs
- HtmlHistory.cs
- ProjectionCamera.cs
- AccessibleObject.cs
- SelectedCellsChangedEventArgs.cs
- NavigateEvent.cs
- PointConverter.cs
- SignedXml.cs
- ByteAnimationBase.cs
- IntersectQueryOperator.cs
- DataGridViewColumnConverter.cs
- PanelStyle.cs
- OfTypeExpression.cs
- UnknownBitmapEncoder.cs
- Typography.cs
- RuntimeHandles.cs
- InkPresenter.cs
- PreloadHost.cs
- Lease.cs
- InternalPermissions.cs
- Grid.cs
- SafeProcessHandle.cs
- XmlDocument.cs
- DataRow.cs
- ItemAutomationPeer.cs
- XPathAxisIterator.cs
- DecoderFallbackWithFailureFlag.cs
- DetailsViewDeletedEventArgs.cs
- ReferentialConstraint.cs
- StandardCommands.cs
- ActionFrame.cs
- StreamInfo.cs
- Hyperlink.cs
- DateTimeOffsetConverter.cs
- DataSet.cs
- XslVisitor.cs
- ConvertersCollection.cs
- UserPreferenceChangedEventArgs.cs
- smtppermission.cs
- UnmanagedBitmapWrapper.cs
- SmiMetaDataProperty.cs
- InstanceDataCollectionCollection.cs
- TextUtf8RawTextWriter.cs
- TextEditorSelection.cs
- ManagedFilter.cs
- BigInt.cs
- WebSysDescriptionAttribute.cs
- XsltFunctions.cs
- MissingSatelliteAssemblyException.cs
- PrivilegedConfigurationManager.cs
- VersionedStreamOwner.cs
- FontFamily.cs
- Bezier.cs
- TextBox.cs