You've already forked linux-packaging-mono
Imported Upstream version 4.6.0.125
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
This commit is contained in:
parent
a569aebcfd
commit
e79aa3c0ed
@ -0,0 +1,93 @@
|
||||
//------------------------------------------------------------
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------
|
||||
|
||||
namespace System.ServiceModel
|
||||
{
|
||||
using System.Reflection;
|
||||
using System.ServiceModel.Security;
|
||||
using System.Net.Security;
|
||||
using System.ServiceModel.Description;
|
||||
|
||||
[AttributeUsage(ServiceModelAttributeTargets.OperationContract, AllowMultiple = true, Inherited = false)]
|
||||
public sealed class FaultContractAttribute : Attribute
|
||||
{
|
||||
string action;
|
||||
string name;
|
||||
string ns;
|
||||
Type type;
|
||||
ProtectionLevel protectionLevel = ProtectionLevel.None;
|
||||
bool hasProtectionLevel = false;
|
||||
|
||||
public FaultContractAttribute(Type detailType)
|
||||
{
|
||||
if (detailType == null)
|
||||
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentNullException("detailType"));
|
||||
|
||||
this.type = detailType;
|
||||
}
|
||||
|
||||
public Type DetailType
|
||||
{
|
||||
get { return this.type; }
|
||||
}
|
||||
|
||||
public string Action
|
||||
{
|
||||
get { return this.action; }
|
||||
set
|
||||
{
|
||||
if (value == null)
|
||||
throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("value");
|
||||
this.action = value;
|
||||
}
|
||||
}
|
||||
|
||||
public string Name
|
||||
{
|
||||
get { return this.name; }
|
||||
set
|
||||
{
|
||||
if (value == null)
|
||||
throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("value");
|
||||
if (value == string.Empty)
|
||||
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value",
|
||||
SR.GetString(SR.SFxNameCannotBeEmpty)));
|
||||
this.name = value;
|
||||
}
|
||||
}
|
||||
|
||||
public string Namespace
|
||||
{
|
||||
get { return this.ns; }
|
||||
set
|
||||
{
|
||||
if (!string.IsNullOrEmpty(value))
|
||||
NamingHelper.CheckUriProperty(value, "Namespace");
|
||||
this.ns = value;
|
||||
}
|
||||
}
|
||||
|
||||
internal const string ProtectionLevelPropertyName = "ProtectionLevel";
|
||||
public ProtectionLevel ProtectionLevel
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.protectionLevel;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (!ProtectionLevelHelper.IsDefined(value))
|
||||
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value"));
|
||||
this.protectionLevel = value;
|
||||
this.hasProtectionLevel = true;
|
||||
}
|
||||
}
|
||||
|
||||
public bool HasProtectionLevel
|
||||
{
|
||||
get { return this.hasProtectionLevel; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user