You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
270 lines
7.0 KiB
270 lines
7.0 KiB
using System;
|
|
using System.Text;
|
|
using System.Net;
|
|
using System.IO;
|
|
using System.Text.RegularExpressions;
|
|
using System.Runtime.Remoting;
|
|
using System.Globalization;
|
|
using System.Security;
|
|
using System.Security.Policy;
|
|
using System.Security.Permissions;
|
|
using System.Collections;
|
|
using System.Runtime.InteropServices;
|
|
using System.Reflection;
|
|
using System.Configuration.Assemblies;
|
|
using System.Threading;
|
|
using System.Xml;
|
|
using System.Xml.XPath;
|
|
|
|
namespace Microsoft.Fusion.ADF
|
|
{
|
|
public enum FileType : int
|
|
{
|
|
Unknown = 0,
|
|
RawFile = 1,
|
|
ApplicationManifest = 2,
|
|
ComponentManifest = 3
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// ApplicationMonikerRequest
|
|
//----------------------------------------------------------
|
|
public class ApplicationMonikerRequest : WebRequest
|
|
{
|
|
public FileType type;
|
|
string _appStorePath;
|
|
Uri _appBase;
|
|
ApplicationMonikerResponse _appMonResponse;
|
|
AsyncCallback _clientRespCallback;
|
|
Uri _requestUri;
|
|
|
|
//----------------------------------------------------------
|
|
// Constructor
|
|
//----------------------------------------------------------
|
|
public static new WebRequest Create(System.Uri uri)
|
|
{
|
|
ApplicationMonikerRequest apm = new ApplicationMonikerRequest();
|
|
return apm;
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// Constructor
|
|
//----------------------------------------------------------
|
|
public static WebRequest Create(Uri uri, Uri appBase, string appStorePath)
|
|
{
|
|
ApplicationMonikerRequest apm = new ApplicationMonikerRequest();
|
|
apm._appStorePath = appStorePath;
|
|
apm._appBase = appBase;
|
|
apm._appMonResponse = new ApplicationMonikerResponse(uri, appBase, appStorePath);
|
|
apm.type = FileType.Unknown;
|
|
apm._requestUri = uri;
|
|
return apm;
|
|
}
|
|
|
|
|
|
//----------------------------------------------------------
|
|
// Abort
|
|
//----------------------------------------------------------
|
|
public override void Abort()
|
|
{
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// BeginGetRequestStream
|
|
//----------------------------------------------------------
|
|
public override IAsyncResult BeginGetRequestStream(
|
|
AsyncCallback callback,
|
|
object state)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// EndGetRequestStream
|
|
//----------------------------------------------------------
|
|
public override Stream EndGetRequestStream(
|
|
IAsyncResult asyncResult)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// BeginGetResponse
|
|
//----------------------------------------------------------
|
|
public override IAsyncResult BeginGetResponse(
|
|
AsyncCallback callback,
|
|
object state)
|
|
{
|
|
_clientRespCallback = callback;
|
|
IAsyncResult ar = new AsyncResult(state, null, true, true);
|
|
ResponseCallback(ar);
|
|
return ar;
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// EndGetResponse
|
|
//----------------------------------------------------------
|
|
public override WebResponse EndGetResponse(
|
|
IAsyncResult asyncResult)
|
|
{
|
|
return _appMonResponse;
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// BeginGetRequestStream
|
|
//----------------------------------------------------------
|
|
public override Stream GetRequestStream()
|
|
{
|
|
return null;
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// GetResponse
|
|
//----------------------------------------------------------
|
|
public override WebResponse GetResponse()
|
|
{
|
|
return _appMonResponse;
|
|
}
|
|
|
|
//-----------------------------------------------------------------------
|
|
|
|
//----------------------------------------------------------
|
|
// Response callback
|
|
//----------------------------------------------------------
|
|
private void ResponseCallback(IAsyncResult ar)
|
|
{
|
|
_clientRespCallback(ar);
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// Property methods
|
|
//----------------------------------------------------------
|
|
public override string ConnectionGroupName
|
|
{
|
|
get { return null; }
|
|
set {}
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// ContentLength
|
|
//----------------------------------------------------------
|
|
public override long ContentLength
|
|
{
|
|
get
|
|
{ return 0; }
|
|
set
|
|
{}
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// ContentType
|
|
//----------------------------------------------------------
|
|
public override string ContentType
|
|
{
|
|
get
|
|
{ return null; }
|
|
set
|
|
{ }
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// Credentials
|
|
//----------------------------------------------------------
|
|
public override ICredentials Credentials
|
|
{
|
|
get
|
|
{ return null; }
|
|
set
|
|
{ }
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// Headers
|
|
//----------------------------------------------------------
|
|
public override WebHeaderCollection Headers
|
|
{
|
|
get
|
|
{ return null; }
|
|
set
|
|
{ }
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// Method
|
|
//----------------------------------------------------------
|
|
public override string Method
|
|
{
|
|
get
|
|
{ return null;}
|
|
set
|
|
{ }
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// PreAuthenticate
|
|
//----------------------------------------------------------
|
|
public override bool PreAuthenticate
|
|
{
|
|
get
|
|
{ return false; }
|
|
set
|
|
{ }
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// Proxy
|
|
//----------------------------------------------------------
|
|
public override IWebProxy Proxy
|
|
{
|
|
get
|
|
{ return null;}
|
|
set
|
|
{ }
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// RequestUri
|
|
//----------------------------------------------------------
|
|
public override Uri RequestUri
|
|
{
|
|
get
|
|
{ return _requestUri; }
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// Timeout
|
|
//----------------------------------------------------------
|
|
public override int Timeout
|
|
{
|
|
get
|
|
{ return 0; }
|
|
set
|
|
{ }
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// CachedCopyExists
|
|
//----------------------------------------------------------
|
|
public bool CachedCopyExists()
|
|
{
|
|
return _appMonResponse.CachedCopyExists();
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// GetCacheFileSize
|
|
//----------------------------------------------------------
|
|
public long GetCacheFileSize()
|
|
{
|
|
return _appMonResponse.GetCacheFileSize();
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
// Dispose
|
|
//----------------------------------------------------------
|
|
public void Dispose()
|
|
{
|
|
_appMonResponse.Dispose();
|
|
}
|
|
|
|
}
|
|
}
|