Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- HtmlTable.cs
- SafeIUnknown.cs
- TheQuery.cs
- connectionpool.cs
- FloaterParaClient.cs
- OrderedDictionaryStateHelper.cs
- Run.cs
- FixedDocument.cs
- TraceHandler.cs
- InputProviderSite.cs
- LicenseManager.cs
- validationstate.cs
- ActivityExecutionContextCollection.cs
- xdrvalidator.cs
- SQLString.cs
- SectionInformation.cs
- XPathItem.cs
- StrokeCollectionDefaultValueFactory.cs
- BadImageFormatException.cs
- InkCanvas.cs
- Rijndael.cs
- ISAPIWorkerRequest.cs
- ToolboxDataAttribute.cs
- CryptoConfig.cs
- Aes.cs
- PolicyReader.cs
- DbSetClause.cs
- MetaChildrenColumn.cs
- OneWayChannelFactory.cs
- InternalException.cs
- UIInitializationException.cs
- SvcMapFileSerializer.cs
- UseAttributeSetsAction.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- IPCCacheManager.cs
- RequestResizeEvent.cs
- XslCompiledTransform.cs
- TextEditor.cs
- DatasetMethodGenerator.cs
- PrefixQName.cs
- SwitchAttribute.cs
- ComIntegrationManifestGenerator.cs
- NodeFunctions.cs
- odbcmetadatacolumnnames.cs
- XmlConvert.cs
- SectionInput.cs
- DataIdProcessor.cs
- PeerTransportElement.cs
- MarkupWriter.cs
- FixedSOMPageConstructor.cs
- SafeEventLogReadHandle.cs
- ComboBoxItem.cs
- TextServicesLoader.cs
- DecimalFormatter.cs
- ResourcePermissionBaseEntry.cs
- PtsContext.cs
- Setter.cs
- AnnotationHelper.cs
- ValidationErrorCollection.cs
- mediapermission.cs
- TextSearch.cs
- StreamGeometry.cs
- SafeMILHandle.cs
- Light.cs
- SimpleHandlerBuildProvider.cs
- ParenthesizePropertyNameAttribute.cs
- LicenseException.cs
- OciHandle.cs
- HandlerFactoryWrapper.cs
- ContextDataSourceView.cs
- InvalidCastException.cs
- SqlUserDefinedAggregateAttribute.cs
- AbstractExpressions.cs
- RuntimeConfigLKG.cs
- MatrixKeyFrameCollection.cs
- HtmlInputReset.cs
- DynamicDocumentPaginator.cs
- InstanceNameConverter.cs
- CodeMemberProperty.cs
- CacheEntry.cs
- ApplicationProxyInternal.cs
- SafeLibraryHandle.cs
- APCustomTypeDescriptor.cs
- TreeNodeStyle.cs
- Set.cs
- Shape.cs
- IriParsingElement.cs
- ToolStripPanelSelectionGlyph.cs
- ObjectViewQueryResultData.cs
- XPathArrayIterator.cs
- Condition.cs
- SafeThreadHandle.cs
- prompt.cs
- DesignerCategoryAttribute.cs
- LicenseManager.cs
- Point3DValueSerializer.cs
- SingleAnimation.cs
- Axis.cs
- ValidationResult.cs
- GridViewCellAutomationPeer.cs