Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Log / System / IO / Log / PolicyUnit.cs / 1305376 / PolicyUnit.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.IO.Log { using System; using System.Globalization; public struct PolicyUnit { PolicyUnitType type; long value; public PolicyUnit(long value, PolicyUnitType type) { if (type == PolicyUnitType.Percentage) { if ((value < 0) || (value > 100)) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ArgumentOutOfRange("value")); } else if (type == PolicyUnitType.Extents) { if (value < 0) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ArgumentOutOfRange("value")); } else { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ArgumentOutOfRange("type")); } this.type = type; this.value = value; } public PolicyUnitType Type { get { return this.type; } } public long Value { get { return this.value; } } public override int GetHashCode() { return (this.type.GetHashCode() ^ this.value.GetHashCode()); } public override bool Equals(object obj) { if (!(obj is PolicyUnit)) return false; PolicyUnit other = (PolicyUnit)(obj); return this == other; } public static bool operator ==(PolicyUnit left, PolicyUnit right) { return ((left.type == right.type) && (left.value == right.value)); } public static bool operator !=(PolicyUnit left, PolicyUnit right) { return !(left == right); } public static PolicyUnit Percentage(long value) { return new PolicyUnit(value, PolicyUnitType.Percentage); } public static PolicyUnit Extents(long value) { return new PolicyUnit(value, PolicyUnitType.Extents); } public override string ToString() { if (this.type == PolicyUnitType.Percentage) { return SR.GetString(SR.PolicyUnit_Percent, this.value); } else { return SR.GetString(SR.PolicyUnit_Extents, this.value); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.IO.Log { using System; using System.Globalization; public struct PolicyUnit { PolicyUnitType type; long value; public PolicyUnit(long value, PolicyUnitType type) { if (type == PolicyUnitType.Percentage) { if ((value < 0) || (value > 100)) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ArgumentOutOfRange("value")); } else if (type == PolicyUnitType.Extents) { if (value < 0) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ArgumentOutOfRange("value")); } else { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ArgumentOutOfRange("type")); } this.type = type; this.value = value; } public PolicyUnitType Type { get { return this.type; } } public long Value { get { return this.value; } } public override int GetHashCode() { return (this.type.GetHashCode() ^ this.value.GetHashCode()); } public override bool Equals(object obj) { if (!(obj is PolicyUnit)) return false; PolicyUnit other = (PolicyUnit)(obj); return this == other; } public static bool operator ==(PolicyUnit left, PolicyUnit right) { return ((left.type == right.type) && (left.value == right.value)); } public static bool operator !=(PolicyUnit left, PolicyUnit right) { return !(left == right); } public static PolicyUnit Percentage(long value) { return new PolicyUnit(value, PolicyUnitType.Percentage); } public static PolicyUnit Extents(long value) { return new PolicyUnit(value, PolicyUnitType.Extents); } public override string ToString() { if (this.type == PolicyUnitType.Percentage) { return SR.GetString(SR.PolicyUnit_Percent, this.value); } else { return SR.GetString(SR.PolicyUnit_Extents, this.value); } } } } // 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
- ContainerSelectorGlyph.cs
- XmlSchemaNotation.cs
- ParameterElementCollection.cs
- EntityKey.cs
- DetailsViewModeEventArgs.cs
- WindowsListBox.cs
- TextSelectionProcessor.cs
- DbProviderFactories.cs
- ApplicationProxyInternal.cs
- EventData.cs
- ScriptingProfileServiceSection.cs
- EntityRecordInfo.cs
- SchemaCompiler.cs
- RevocationPoint.cs
- EntityDataSourceView.cs
- Touch.cs
- FontNameConverter.cs
- LedgerEntry.cs
- HostedTransportConfigurationManager.cs
- ExpressionNode.cs
- InvokeHandlers.cs
- DataException.cs
- Activator.cs
- TableLayoutColumnStyleCollection.cs
- BufferedWebEventProvider.cs
- FragmentQueryKB.cs
- InputReferenceExpression.cs
- DataGridViewControlCollection.cs
- SmiConnection.cs
- MimeTypePropertyAttribute.cs
- Accessors.cs
- UnsafeNativeMethods.cs
- XmlAttributeCache.cs
- ServiceProviders.cs
- WindowsNonControl.cs
- ObjectCloneHelper.cs
- WeakEventManager.cs
- AllMembershipCondition.cs
- OdbcDataReader.cs
- COM2FontConverter.cs
- AppDomainFactory.cs
- TextServicesCompartmentEventSink.cs
- ClientConfigPaths.cs
- XmlSerializerSection.cs
- PortCache.cs
- TraceUtils.cs
- PopupEventArgs.cs
- DataControlFieldCollection.cs
- ChannelOptions.cs
- DataGridViewColumnCollection.cs
- FlowDocumentPaginator.cs
- DropShadowEffect.cs
- ZipIOLocalFileBlock.cs
- PathFigureCollectionValueSerializer.cs
- PhysicalFontFamily.cs
- VersionPair.cs
- EventMetadata.cs
- PersonalizationEntry.cs
- SqlExpander.cs
- HttpContext.cs
- CollectionChangeEventArgs.cs
- ProxyAttribute.cs
- CompositeDispatchFormatter.cs
- DataGridViewUtilities.cs
- AdvancedBindingEditor.cs
- MsmqIntegrationChannelFactory.cs
- XmlAttributeOverrides.cs
- TemplateParser.cs
- FunctionDetailsReader.cs
- BamlBinaryWriter.cs
- ProviderBase.cs
- TableAdapterManagerNameHandler.cs
- ConfigErrorGlyph.cs
- FixedSOMSemanticBox.cs
- Soap12ServerProtocol.cs
- XPathNodeList.cs
- ParserHooks.cs
- ConvertersCollection.cs
- Animatable.cs
- EntityDataSourceDataSelectionPanel.cs
- DataSourceGeneratorException.cs
- ImageIndexConverter.cs
- SubclassTypeValidator.cs
- ConnectionPoolManager.cs
- AttachedPropertyDescriptor.cs
- XmlILIndex.cs
- CheckableControlBaseAdapter.cs
- UnsafeNativeMethodsMilCoreApi.cs
- WebPartActionVerb.cs
- ConnectionsZone.cs
- XmlSchema.cs
- WebPartVerbsEventArgs.cs
- OAVariantLib.cs
- CFGGrammar.cs
- GroupStyle.cs
- Byte.cs
- MouseButton.cs
- QilPatternVisitor.cs
- Metafile.cs
- InfoCardRSAOAEPKeyExchangeDeformatter.cs