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,120 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <copyright file="WebService.cs" company="Microsoft">
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// </copyright>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
/*
|
||||
*/
|
||||
namespace System.Web.Services {
|
||||
|
||||
using System.Diagnostics;
|
||||
using System.Web;
|
||||
using System.ComponentModel;
|
||||
using System.Web.SessionState;
|
||||
using System.Web.Services.Protocols;
|
||||
using System.Security.Principal;
|
||||
using System.Security.Permissions;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
/// <include file='doc\WebService.uex' path='docs/doc[@for="WebService"]/*' />
|
||||
/// <devdoc>
|
||||
/// <para>Defines the
|
||||
/// optional base class for Web Services, which provides direct access to common
|
||||
/// ASP.NET objects, like those for application and session state.</para>
|
||||
/// </devdoc>
|
||||
public class WebService : MarshalByValueComponent {
|
||||
|
||||
private HttpContext context;
|
||||
|
||||
/// <include file='doc\WebService.uex' path='docs/doc[@for="WebService.Application"]/*' />
|
||||
/// <devdoc>
|
||||
/// <para>Gets a
|
||||
/// reference to the application object for the current HTTP request.</para>
|
||||
/// </devdoc>
|
||||
[Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), Description("The ASP.NET application object for the current request.")]
|
||||
public HttpApplicationState Application {
|
||||
[AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
|
||||
get {
|
||||
return Context.Application;
|
||||
}
|
||||
}
|
||||
|
||||
/// <include file='doc\WebService.uex' path='docs/doc[@for="WebService.Context"]/*' />
|
||||
/// <devdoc>
|
||||
/// <para>Gets the ASP.NET Context object for the current request,
|
||||
/// which encapsulates all HTTP-specific context
|
||||
/// used by the HTTP server to process Web requests.</para>
|
||||
/// </devdoc>
|
||||
[Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), WebServicesDescription(Res.WebServiceContext)]
|
||||
public HttpContext Context {
|
||||
[AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
|
||||
get {
|
||||
PartialTrustHelpers.FailIfInPartialTrustOutsideAspNet();
|
||||
if (context == null)
|
||||
context = HttpContext.Current;
|
||||
if (context == null)
|
||||
throw new InvalidOperationException(Res.GetString(Res.WebMissingHelpContext));
|
||||
return context;
|
||||
}
|
||||
}
|
||||
|
||||
/// <include file='doc\WebService.uex' path='docs/doc[@for="WebService.Session"]/*' />
|
||||
/// <devdoc>
|
||||
/// <para>Gets a reference to the <see cref='T:System.Web.HttpSessionState'/>
|
||||
/// instance for the current request.</para>
|
||||
/// </devdoc>
|
||||
[Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), WebServicesDescription(Res.WebServiceSession)]
|
||||
public HttpSessionState Session {
|
||||
[AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
|
||||
get {
|
||||
return Context.Session;
|
||||
}
|
||||
}
|
||||
|
||||
/// <include file='doc\WebService.uex' path='docs/doc[@for="WebService.Server"]/*' />
|
||||
/// <devdoc>
|
||||
/// <para>Gets a reference to the <see cref='T:System.Web.HttpServerUtility'/>
|
||||
/// for the current request.</para>
|
||||
/// </devdoc>
|
||||
[Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), WebServicesDescription(Res.WebServiceServer)]
|
||||
public HttpServerUtility Server {
|
||||
[AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
|
||||
get {
|
||||
return Context.Server;
|
||||
}
|
||||
}
|
||||
|
||||
/// <include file='doc\WebService.uex' path='docs/doc[@for="WebService.User"]/*' />
|
||||
/// <devdoc>
|
||||
/// <para>Gets the ASP.NET server User object, used for authorizing the request.</para>
|
||||
/// </devdoc>
|
||||
[Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), WebServicesDescription(Res.WebServiceUser)]
|
||||
public IPrincipal User {
|
||||
[AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
|
||||
get {
|
||||
return Context.User;
|
||||
}
|
||||
}
|
||||
|
||||
/// <include file='doc\WebService.uex' path='docs/doc[@for="WebService.SoapVersion"]/*' />
|
||||
[Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), WebServicesDescription(Res.WebServiceSoapVersion), ComVisible(false)]
|
||||
public SoapProtocolVersion SoapVersion {
|
||||
[AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
|
||||
get {
|
||||
object o = Context.Items[SoapVersionContextSlot];
|
||||
if (o != null && o is SoapProtocolVersion)
|
||||
return (SoapProtocolVersion)o;
|
||||
else
|
||||
return SoapProtocolVersion.Default;
|
||||
}
|
||||
}
|
||||
|
||||
internal static readonly string SoapVersionContextSlot = "WebServiceSoapVersion";
|
||||
|
||||
internal void SetContext(HttpContext context) {
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user