Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / CqlGeneration / CqlWriter.cs / 1 / 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
- Root.cs
- CharEntityEncoderFallback.cs
- DataGridViewColumnTypeEditor.cs
- SamlDelegatingWriter.cs
- DependencyObjectType.cs
- TemplateField.cs
- ContainerParaClient.cs
- TypeValidationEventArgs.cs
- wgx_commands.cs
- DataGridViewRowConverter.cs
- ClientUrlResolverWrapper.cs
- ClientCultureInfo.cs
- XmlSchemaInferenceException.cs
- HandleRef.cs
- SocketException.cs
- LinkDescriptor.cs
- XamlStream.cs
- COM2DataTypeToManagedDataTypeConverter.cs
- CodeSnippetTypeMember.cs
- HttpCacheVary.cs
- DSASignatureFormatter.cs
- KeyInterop.cs
- CheckoutException.cs
- ButtonFieldBase.cs
- ValidationPropertyAttribute.cs
- WebZone.cs
- TableSectionStyle.cs
- FusionWrap.cs
- VariableAction.cs
- HttpHandlersSection.cs
- TypeKeyValue.cs
- Message.cs
- StringSorter.cs
- KeyFrames.cs
- ToolboxCategoryItems.cs
- PropertyCollection.cs
- AsyncStreamReader.cs
- ContextBase.cs
- Normalization.cs
- ILGenerator.cs
- MemberDomainMap.cs
- HMACRIPEMD160.cs
- Msmq4SubqueuePoisonHandler.cs
- PrePostDescendentsWalker.cs
- ExpressionPrefixAttribute.cs
- SelectManyQueryOperator.cs
- DeflateStream.cs
- FileDialogPermission.cs
- TextureBrush.cs
- WebPartConnectionsConfigureVerb.cs
- ScriptReference.cs
- WebPartExportVerb.cs
- ZoneLinkButton.cs
- ErrorHandler.cs
- ManagedWndProcTracker.cs
- DataControlLinkButton.cs
- SizeChangedEventArgs.cs
- SQLDateTimeStorage.cs
- HttpListenerException.cs
- ClockController.cs
- DbCommandTree.cs
- XDeferredAxisSource.cs
- Html32TextWriter.cs
- ObjectSecurity.cs
- ICspAsymmetricAlgorithm.cs
- DrawingContextDrawingContextWalker.cs
- TimeoutValidationAttribute.cs
- ObservableCollection.cs
- EventProxy.cs
- CircleHotSpot.cs
- MenuScrollingVisibilityConverter.cs
- SessionStateUtil.cs
- XPathException.cs
- MsmqHostedTransportManager.cs
- Cloud.cs
- AttachedAnnotation.cs
- CompiledELinqQueryState.cs
- SerializationUtilities.cs
- _ConnectOverlappedAsyncResult.cs
- DataGridAutoGeneratingColumnEventArgs.cs
- Brush.cs
- EventArgs.cs
- BindingExpressionUncommonField.cs
- MailAddress.cs
- ServicePointManager.cs
- DuplicateDetector.cs
- TargetInvocationException.cs
- NameValueCollection.cs
- VectorKeyFrameCollection.cs
- ProviderIncompatibleException.cs
- DesignerSerializationVisibilityAttribute.cs
- CodeMethodInvokeExpression.cs
- ConfigViewGenerator.cs
- PluralizationServiceUtil.cs
- FlowDocumentView.cs
- ErrorEventArgs.cs
- SiblingIterators.cs
- HttpDebugHandler.cs
- XmlLoader.cs
- WebServiceData.cs