Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / CqlGeneration / CqlWriter.cs / 2 / CqlWriter.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//---------------------------------------------------------------------
using System.Text.RegularExpressions;
using System.Text;
using System.Data.Common.Utils;
using System.Data.Mapping.ViewGeneration.Utils;
using System.Data.Metadata.Edm;
namespace System.Data.Mapping.ViewGeneration.CqlGeneration {
// This class contains helper methods needed for generating Cql
internal static class CqlWriter {
#region Fields
private static readonly Regex s_wordIdentifierRegex = new Regex(@"^[_A-Za-z]\w*$", RegexOptions.ECMAScript | RegexOptions.Compiled);
#endregion
#region Helper Methods
// effects: Given a block name and a field in it -- returns a string
// of form "blockName.field". Does not perform any escaping
internal static string GetQualifiedName(string blockName, string field) {
string result = StringUtil.FormatInvariant("{0}.{1}", blockName, field);
return result;
}
// effects: Modifies builder to contain an escaped version of type's name
internal static void AppendEscapedTypeName(StringBuilder builder, EdmType type) {
AppendEscapedQualifiedName(builder, type.NamespaceName, type.Name);
}
// effects: Modifies builder to contain an escaped version of "namespc.name"
internal static void AppendEscapedQualifiedName(StringBuilder builder, string namespc, string name) {
AppendEscapedName(builder, namespc);
builder.Append('.');
AppendEscapedName(builder, name);
}
// effects: Modifies builder to contain an escaped version of "name"
internal static void AppendEscapedName(StringBuilder builder, string name) {
if (s_wordIdentifierRegex.IsMatch(name) && false == ExternalCalls.IsReservedKeyword(name)) {
// We do not need to escape the name if it is a simple name and it is not a keyword
builder.Append(name);
} else {
string newName = name.Replace("]", "]]");
builder.Append('[')
.Append(newName)
.Append(']');
}
}
#endregion
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//---------------------------------------------------------------------
using System.Text.RegularExpressions;
using System.Text;
using System.Data.Common.Utils;
using System.Data.Mapping.ViewGeneration.Utils;
using System.Data.Metadata.Edm;
namespace System.Data.Mapping.ViewGeneration.CqlGeneration {
// This class contains helper methods needed for generating Cql
internal static class CqlWriter {
#region Fields
private static readonly Regex s_wordIdentifierRegex = new Regex(@"^[_A-Za-z]\w*$", RegexOptions.ECMAScript | RegexOptions.Compiled);
#endregion
#region Helper Methods
// effects: Given a block name and a field in it -- returns a string
// of form "blockName.field". Does not perform any escaping
internal static string GetQualifiedName(string blockName, string field) {
string result = StringUtil.FormatInvariant("{0}.{1}", blockName, field);
return result;
}
// effects: Modifies builder to contain an escaped version of type's name
internal static void AppendEscapedTypeName(StringBuilder builder, EdmType type) {
AppendEscapedQualifiedName(builder, type.NamespaceName, type.Name);
}
// effects: Modifies builder to contain an escaped version of "namespc.name"
internal static void AppendEscapedQualifiedName(StringBuilder builder, string namespc, string name) {
AppendEscapedName(builder, namespc);
builder.Append('.');
AppendEscapedName(builder, name);
}
// effects: Modifies builder to contain an escaped version of "name"
internal static void AppendEscapedName(StringBuilder builder, string name) {
if (s_wordIdentifierRegex.IsMatch(name) && false == ExternalCalls.IsReservedKeyword(name)) {
// We do not need to escape the name if it is a simple name and it is not a keyword
builder.Append(name);
} else {
string newName = name.Replace("]", "]]");
builder.Append('[')
.Append(newName)
.Append(']');
}
}
#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
- UnaryNode.cs
- TraceUtils.cs
- ScalarOps.cs
- DbgUtil.cs
- ArglessEventHandlerProxy.cs
- BooleanAnimationUsingKeyFrames.cs
- AsymmetricKeyExchangeDeformatter.cs
- RotationValidation.cs
- DBSchemaTable.cs
- QueryCacheKey.cs
- columnmapfactory.cs
- TextHidden.cs
- PolicyImporterElement.cs
- CatalogPart.cs
- ToolStrip.cs
- ColorAnimationBase.cs
- ToolboxDataAttribute.cs
- cookiecontainer.cs
- StateDesigner.cs
- ProviderConnectionPoint.cs
- FileNotFoundException.cs
- RTTypeWrapper.cs
- DynamicILGenerator.cs
- DynamicQueryableWrapper.cs
- TypeUsage.cs
- XmlTextEncoder.cs
- TypeSystemHelpers.cs
- PanelContainerDesigner.cs
- ActivityTypeDesigner.xaml.cs
- StorageEntityContainerMapping.cs
- StringAnimationUsingKeyFrames.cs
- ReflectPropertyDescriptor.cs
- keycontainerpermission.cs
- CollectionAdapters.cs
- EnumerableCollectionView.cs
- SqlInfoMessageEvent.cs
- GridViewEditEventArgs.cs
- AsymmetricAlgorithm.cs
- StreamWriter.cs
- SmtpMail.cs
- SoapFormatter.cs
- CompilerErrorCollection.cs
- DummyDataSource.cs
- LocalFileSettingsProvider.cs
- DataGridViewCellValidatingEventArgs.cs
- BitFlagsGenerator.cs
- FieldNameLookup.cs
- TypeUtil.cs
- safesecurityhelperavalon.cs
- ClientRolePrincipal.cs
- LinkLabelLinkClickedEvent.cs
- TdsParserStateObject.cs
- StickyNoteHelper.cs
- TextSyndicationContentKindHelper.cs
- ObjectTag.cs
- TypeNameHelper.cs
- ReachPageContentSerializer.cs
- DbDataSourceEnumerator.cs
- SubtreeProcessor.cs
- ISFTagAndGuidCache.cs
- DropDownHolder.cs
- CommonProperties.cs
- OrderedEnumerableRowCollection.cs
- SafeSecurityHelper.cs
- CompilerGlobalScopeAttribute.cs
- Preprocessor.cs
- DateTimeFormatInfo.cs
- StringCollection.cs
- _ConnectOverlappedAsyncResult.cs
- InternalMappingException.cs
- CachedBitmap.cs
- HttpContextWrapper.cs
- JpegBitmapEncoder.cs
- PageEventArgs.cs
- CodeTypeReferenceExpression.cs
- TraceHandler.cs
- DataObject.cs
- ProfileModule.cs
- TreeViewImageIndexConverter.cs
- TaskFormBase.cs
- NameValueCollection.cs
- NestPullup.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- LinkedList.cs
- Char.cs
- BufferedGraphicsContext.cs
- ExtensionWindowHeader.cs
- RuntimeHandles.cs
- DataGridViewMethods.cs
- UnitySerializationHolder.cs
- UdpTransportSettings.cs
- SamlDelegatingWriter.cs
- CustomAttributeBuilder.cs
- WebPartEditorApplyVerb.cs
- FtpRequestCacheValidator.cs
- VariableAction.cs
- _BaseOverlappedAsyncResult.cs
- StringUtil.cs
- BaseCollection.cs
- fixedPageContentExtractor.cs