Imported Upstream version 4.2.0.179

Former-commit-id: 0a113cb3a6feb7873f632839b1307cc6033cd595
This commit is contained in:
Xamarin Public Jenkins
2015-08-26 07:17:56 -04:00
committed by Jo Shields
parent 183bba2c9a
commit 6992685b86
7507 changed files with 90259 additions and 657307 deletions

View File

@@ -2,7 +2,9 @@
// AssemblyInfo.cs
//
// Author:
// Joel W. Reed (joelwreed@gmail.com)
// Andreas Nahr (ClassDevelopment@A-SoftTech.com)
//
// (C) 2003 Ximian, Inc. http://www.ximian.com
//
//
@@ -30,32 +32,45 @@ using System;
using System.Reflection;
using System.Resources;
using System.Security;
using System.Security.Permissions;
using System.Diagnostics;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about the System.ServiceModel assembly
[assembly: AssemblyVersion (Consts.FxVersion)]
[assembly: SatelliteContractVersion (Consts.FxVersion)]
// General Information about the System.Runtime.DurableInstancing assembly
// v3.0 Assembly
[assembly: AssemblyTitle ("System.Runtime.DurableInstancing.dll")]
[assembly: AssemblyDescription ("System.Runtime.DurableInstancing.dll")]
[assembly: AssemblyConfiguration ("Development version")]
[assembly: AssemblyCompany ("MONO development team")]
[assembly: AssemblyProduct ("MONO CLI")]
[assembly: AssemblyCopyright ("(c) 2003 Various Authors")]
[assembly: AssemblyTrademark ("")]
[assembly: CLSCompliant (true)]
[assembly: AssemblyDefaultAlias ("System.Runtime.DurableInstancing.dll")]
[assembly: AssemblyInformationalVersion ("3.5.594.0")]
[assembly: AssemblyCompany (Consts.MonoCompany)]
[assembly: AssemblyProduct (Consts.MonoProduct)]
[assembly: AssemblyCopyright (Consts.MonoCopyright)]
[assembly: AssemblyVersion (Consts.FxVersion)]
[assembly: SatelliteContractVersion (Consts.FxVersion)]
[assembly: AssemblyInformationalVersion (Consts.FxFileVersion)]
[assembly: AssemblyFileVersion (Consts.FxFileVersion)]
[assembly: NeutralResourcesLanguage ("en-US")]
[assembly: ComVisible (false)]
[assembly: CLSCompliant (true)]
[assembly: AssemblyDelaySign (true)]
#if NET_2_1
[assembly: AssemblyKeyFile ("../silverlight.pub")]
#else
[assembly: AssemblyKeyFile("../winfx.pub")]
[assembly: AssemblyKeyFile ("../winfx.pub")]
[assembly: AllowPartiallyTrustedCallers]
[assembly: ComCompatibleVersion (1, 0, 3300, 0)]
[assembly: SecurityCritical (SecurityCriticalScope.Explicit)]
#endif
[assembly: InternalsVisibleTo ("System.Activities, PublicKey=" + AssemblyRef.FrameworkPublicKeyFull2)]
[assembly: InternalsVisibleTo ("System.Runtime.Serialization, PublicKey=" + AssemblyRef.FrameworkPublicKeyFull2)]
[assembly: InternalsVisibleTo ("System.IdentityModel, PublicKey=" + AssemblyRef.FrameworkPublicKeyFull2)]
[assembly: InternalsVisibleTo ("System.IdentityModel.Selectors, PublicKey=" + AssemblyRef.FrameworkPublicKeyFull2)]
[assembly: InternalsVisibleTo ("System.ServiceModel, PublicKey=" + AssemblyRef.FrameworkPublicKeyFull2)]
[assembly: InternalsVisibleTo ("System.ServiceModel.Activities, PublicKey=" + AssemblyRef.FrameworkPublicKeyFull2)]
[assembly: InternalsVisibleTo ("System.ServiceModel.Activation, PublicKey=" + AssemblyRef.FrameworkPublicKeyFull2)]
[assembly: InternalsVisibleTo ("System.ServiceModel.Routing, PublicKey=" + AssemblyRef.FrameworkPublicKeyFull2)]
[assembly: ComVisible (false)]

View File

@@ -3,7 +3,8 @@ SUBDIRS =
include ../../build/rules.make
LIBRARY = System.Runtime.DurableInstancing.dll
LIB_MCS_FLAGS = -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Core.dll -r:System.Xml.Linq.dll
LIB_REFS = System System.Xml System.Core System.Xml.Linq System.Transactions System.ServiceModel.Internals System.Runtime.Serialization
LIB_MCS_FLAGS =
TEST_MCS_FLAGS = $(LIB_MCS_FLAGS)

View File

@@ -0,0 +1,93 @@
using System;
using System.Xml.Linq;
public static class SRCore
{
// external/referencesource/System.Runtime.DurableInstancing$ grep -R SRCore. | sed -e "s/.*SRCore.\([a-zA-Z0-9_]*\).*/\\1/" | sort | uniq | sed -e "s/\(.*\)/public const string \1 = \"\1\";/"
public const string AsyncTransactionException = "AsyncTransactionException";
public const string BindLockRequiresCommandFlag = "BindLockRequiresCommandFlag";
public const string BindReclaimedLockException = "BindReclaimedLockException";
public const string BindReclaimSucceeded = "BindReclaimSucceeded";
public const string CannotAcquireLockDefault = "CannotAcquireLockDefault";
public static string CannotAcquireLockSpecific (object arg1) { return "CannotAcquireLockSpecific"; }
public static string CannotAcquireLockSpecificWithOwner (object arg1, object arg2) { return "CannotAcquireLockSpecificWithOwner"; }
public const string CannotCompleteWithKeys = "CannotCompleteWithKeys";
public const string CannotCreateContextWithNullId = "CannotCreateContextWithNullId";
public const string CannotInvokeBindingFromNonBinding = "CannotInvokeBindingFromNonBinding";
public const string CannotInvokeTransactionalFromNonTransactional = "CannotInvokeTransactionalFromNonTransactional";
public const string CannotReplaceTransaction = "CannotReplaceTransaction";
public const string CommandExecutionCannotOverlap = "CommandExecutionCannotOverlap";
public const string CompletedMustNotHaveAssociatedKeys = "CompletedMustNotHaveAssociatedKeys";
public const string ContextAlreadyBoundToInstance = "ContextAlreadyBoundToInstance";
public const string ContextAlreadyBoundToLock = "ContextAlreadyBoundToLock";
public const string ContextAlreadyBoundToOwner = "ContextAlreadyBoundToOwner";
public const string ContextMustBeBoundToInstance = "ContextMustBeBoundToInstance";
public const string ContextMustBeBoundToOwner = "ContextMustBeBoundToOwner";
public const string ContextNotFromThisStore = "ContextNotFromThisStore";
public const string DoNotCompleteTryCommandWithPendingReclaim = "DoNotCompleteTryCommandWithPendingReclaim";
public const string ExecuteMustBeNested = "ExecuteMustBeNested";
public static string GenericInstanceCommand (object arg1) { return "GenericInstanceCommand"; }
public const string GenericInstanceCommandNull = "GenericInstanceCommandNull";
public const string GuidCannotBeEmpty = "GuidCannotBeEmpty";
public const string HandleFreed = "HandleFreed";
public const string HandleFreedBeforeInitialized = "HandleFreedBeforeInitialized";
public static string InitialMetadataCannotBeDeleted (object arg1) { return "InitialMetadataCannotBeDeleted"; }
public const string InstanceCollisionDefault = "InstanceCollisionDefault";
public static string InstanceCollisionSpecific (Guid arg1) { return "InstanceCollisionSpecific"; }
public const string InstanceCompleteDefault = "InstanceCompleteDefault";
public static string InstanceCompleteSpecific (Guid arg1) { return "InstanceCompleteSpecific"; }
public const string InstanceHandleConflictDefault = "InstanceHandleConflictDefault";
public static string InstanceHandleConflictSpecific (Guid arg1) { return "InstanceHandleConflictSpecific"; }
public const string InstanceKeyRequiresValidGuid = "InstanceKeyRequiresValidGuid";
public const string InstanceLockLostDefault = "InstanceLockLostDefault";
public static string InstanceLockLostSpecific (Guid arg1) { return "InstanceLockLostSpecific"; }
public const string InstanceNotReadyDefault = "InstanceNotReadyDefault";
public static string InstanceNotReadySpecific (Guid arg1) { return "InstanceNotReadySpecific"; }
public const string InstanceOperationRequiresInstance = "InstanceOperationRequiresInstance";
public const string InstanceOperationRequiresLock = "InstanceOperationRequiresLock";
public const string InstanceOperationRequiresNotCompleted = "InstanceOperationRequiresNotCompleted";
public const string InstanceOperationRequiresNotUninitialized = "InstanceOperationRequiresNotUninitialized";
public const string InstanceOperationRequiresOwner = "InstanceOperationRequiresOwner";
public const string InstanceOwnerDefault = "InstanceOwnerDefault";
public static string InstanceOwnerSpecific (Guid arg1) { return "InstanceOwnerSpecific"; }
public const string InstanceStoreBoundSameVersionTwice = "InstanceStoreBoundSameVersionTwice";
public const string InvalidInstanceState = "InvalidInstanceState";
public const string InvalidKeyArgument = "InvalidKeyArgument";
public const string InvalidLockToken = "InvalidLockToken";
public const string KeyAlreadyAssociated = "KeyAlreadyAssociated";
public const string KeyAlreadyCompleted = "KeyAlreadyCompleted";
public const string KeyAlreadyUnassociated = "KeyAlreadyUnassociated";
public const string KeyCollisionDefault = "KeyCollisionDefault";
public static string KeyCollisionSpecific (object arg1) { return "KeyCollisionSpecific"; }
public static string KeyCollisionSpecific (object arg1, object arg2, object arg3) { return "KeyCollisionSpecific"; }
public static string KeyCollisionSpecificKeyOnly (object arg1) { return "KeyCollisionSpecificKeyOnly"; }
public const string KeyCompleteDefault = "KeyCompleteDefault";
public static string KeyCompleteSpecific (object arg1) { return "KeyCompleteSpecific"; }
public const string KeyNotAssociated = "KeyNotAssociated";
public const string KeyNotCompleted = "KeyNotCompleted";
public const string KeyNotReadyDefault = "KeyNotReadyDefault";
public static string KeyNotReadySpecific (object arg1) { return "KeyNotReadySpecific"; }
public const string LoadedWriteOnlyValue = "LoadedWriteOnlyValue";
public const string MayBindLockCommandShouldValidateOwner = "MayBindLockCommandShouldValidateOwner";
public const string MetadataCannotContainNullKey = "MetadataCannotContainNullKey";
public static string MetadataCannotContainNullValue (object arg1) { return "MetadataCannotContainNullValue"; }
public const string MustSetTransactionOnFirstCall = "MustSetTransactionOnFirstCall";
public static string NameCollisionOnCollect (XName arg1, object arg2) { return "NameCollisionOnCollect"; }
public static string NameCollisionOnMap (XName arg1, object arg2) { return "NameCollisionOnMap"; }
public const string OnCancelRequestedThrew = "OnCancelRequestedThrew";
public const string OnFreeInstanceHandleThrew = "OnFreeInstanceHandleThrew";
public static string OutsideInstanceExecutionScope (object arg1) { return "OutsideInstanceExecutionScope"; }
public static string OutsideTransactionalCommand (object arg1) { return "OutsideTransactionalCommand"; }
public const string OwnerBelongsToWrongStore = "OwnerBelongsToWrongStore";
public static string PersistencePipelineAbortThrew (object arg1) { return "PersistencePipelineAbortThrew"; }
public static string ProviderDoesNotSupportCommand (object arg1) { return "ProviderDoesNotSupportCommand"; }
public const string StoreReportedConflictingLockTokens = "StoreReportedConflictingLockTokens";
public const string TimedOutWaitingForLockResolution = "TimedOutWaitingForLockResolution";
public const string TransactionInDoubtNonHost = "TransactionInDoubtNonHost";
public const string TransactionRolledBackNonHost = "TransactionRolledBackNonHost";
public const string TryCommandCannotExecuteSubCommandsAndReduce = "TryCommandCannotExecuteSubCommandsAndReduce";
public const string UninitializedCannotHaveData = "UninitializedCannotHaveData";
public const string WaitAlreadyInProgress = "WaitAlreadyInProgress";
public static string WaitForEventsTimedOut (TimeSpan arg1) { return "WaitForEventsTimedOut"; }
}

View File

@@ -1,19 +1,53 @@
../../build/common/Consts.cs
../../build/common/Locale.cs
../../build/common/MonoTODOAttribute.cs
../../build/common/SR.cs
SRCore.cs
Assembly/AssemblyInfo.cs
System.Runtime.DurableInstancing/AllEnums.cs
System.Runtime.DurableInstancing/AllExceptions.cs
System.Runtime.DurableInstancing/InstanceHandle.cs
System.Runtime.DurableInstancing/InstanceKey.cs
System.Runtime.DurableInstancing/InstanceKeyView.cs
System.Runtime.DurableInstancing/InstanceLockQueryResult.cs
System.Runtime.DurableInstancing/InstanceOwner.cs
System.Runtime.DurableInstancing/InstanceOwnerQueryResult.cs
System.Runtime.DurableInstancing/InstancePersistenceCommand.cs
System.Runtime.DurableInstancing/InstancePersistenceContext.cs
System.Runtime.DurableInstancing/InstancePersistenceEvent.cs
System.Runtime.DurableInstancing/InstanceStore.cs
System.Runtime.DurableInstancing/InstanceStoreQueryResult.cs
System.Runtime.DurableInstancing/InstanceValue.cs
System.Runtime.DurableInstancing/InstanceView.cs
../../../external/referencesource/System.Runtime.DurableInstancing/AssemblyInfo.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/DisassociateInstanceKeysExtension.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/IDurableInstancingOptions.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceCollisionException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceCompleteException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceHandleConflictException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceHandle.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceHandleReference.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceKeyCollisionException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceKeyCompleteException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceKey.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceKeyNotReadyException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceKeyState.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceKeyView.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceLockedException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceLockLostException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceLockQueryResult.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceNormalEvent.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceNotReadyException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceOwner.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceOwnerException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceOwnerQueryResult.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstancePersistenceCommand.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstancePersistenceCommandException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstancePersistenceContext.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstancePersistence.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstancePersistenceEvent.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstancePersistenceException.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceState.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceStore.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceStoreQueryResult.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceValueConsistency.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceValue.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceValueOptions.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/DurableInstancing/InstanceView.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/ICancelable.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/IPersistencePipelineModule.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/PersistenceMetadataNamespace.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/PersistencePipeline.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/TransactedAsyncResult.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/TransactionHelper.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/Workflow45Namespace.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/WorkflowNamespace.cs
../../../external/referencesource/System.Runtime.DurableInstancing/System/Runtime/WorkflowServiceNamespace.cs

View File

@@ -1,35 +0,0 @@
using System;
namespace System.Runtime.DurableInstancing
{
public enum InstanceKeyState
{
Unknown,
Associated,
Completed,
}
public enum InstanceState
{
Unknown,
Uninitialized,
Initialized,
Completed,
}
[Flags]
public enum InstanceValueConsistency
{
None = 0,
InDoubt = 1,
Partial = 2
}
[Flags]
public enum InstanceValueOptions
{
None = 0,
Optional = 1,
WriteOnly = 2
}
}

View File

@@ -1,125 +0,0 @@
using System;
using System.Runtime.Serialization;
namespace System.Runtime.DurableInstancing
{
[Serializable]
public class InstanceCollisionException : InstancePersistenceCommandException
{
public InstanceCollisionException () : this ("Instance collision") {}
public InstanceCollisionException (string msg) : base (msg) {}
public InstanceCollisionException (string msg, Exception inner) : base (msg, inner) {}
protected InstanceCollisionException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstanceCompleteException : InstancePersistenceCommandException
{
public InstanceCompleteException () : this ("Instance has completed") {}
public InstanceCompleteException (string msg) : base (msg) {}
public InstanceCompleteException (string msg, Exception inner) : base (msg, inner) {}
protected InstanceCompleteException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstanceHandleConflictException : InstancePersistenceCommandException
{
public InstanceHandleConflictException () : this ("Instance handle conflict") {}
public InstanceHandleConflictException (string msg) : base (msg) {}
public InstanceHandleConflictException (string msg, Exception inner) : base (msg, inner) {}
protected InstanceHandleConflictException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstanceKeyCompleteException : InstancePersistenceCommandException
{
public InstanceKeyCompleteException () : this ("Instance key completed") {}
public InstanceKeyCompleteException (string msg) : base (msg) {}
public InstanceKeyCompleteException (string msg, Exception inner) : base (msg, inner) {}
protected InstanceKeyCompleteException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstanceKeyNotReadyException : InstancePersistenceCommandException
{
public InstanceKeyNotReadyException () : this ("Instance key is not ready") {}
public InstanceKeyNotReadyException (string msg) : base (msg) {}
public InstanceKeyNotReadyException (string msg, Exception inner) : base (msg, inner) {}
protected InstanceKeyNotReadyException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstanceLockedException : InstancePersistenceCommandException
{
public InstanceLockedException () : this ("Instance is locked") {}
public InstanceLockedException (string msg) : base (msg) {}
public InstanceLockedException (string msg, Exception inner) : base (msg, inner) {}
protected InstanceLockedException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstanceLockLostException : InstancePersistenceCommandException
{
public InstanceLockLostException () : this ("Instance lock is lost") {}
public InstanceLockLostException (string msg) : base (msg) {}
public InstanceLockLostException (string msg, Exception inner) : base (msg, inner) {}
protected InstanceLockLostException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstanceNotReadyException : InstancePersistenceCommandException
{
public InstanceNotReadyException () : this ("Instance key is not ready") {}
public InstanceNotReadyException (string msg) : base (msg) {}
public InstanceNotReadyException (string msg, Exception inner) : base (msg, inner) {}
protected InstanceNotReadyException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstanceKeyCollisionException : InstancePersistenceCommandException
{
public InstanceKeyCollisionException () : this ("Instance key collision") {}
public InstanceKeyCollisionException (string msg) : base (msg) {}
public InstanceKeyCollisionException (string msg, Exception inner) : base (msg, inner) {}
protected InstanceKeyCollisionException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstanceOwnerException : InstancePersistenceException
{
public InstanceOwnerException () : this ("Instance owner error") {}
public InstanceOwnerException (string msg) : base (msg) {}
public InstanceOwnerException (string msg, Exception inner) : base (msg, inner) {}
protected InstanceOwnerException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstancePersistenceCommandException : InstancePersistenceException
{
public InstancePersistenceCommandException () : this ("Instance persistence command error") {}
public InstancePersistenceCommandException (string msg) : base (msg) {}
public InstancePersistenceCommandException (string msg, Exception inner) : base (msg, inner) {}
protected InstancePersistenceCommandException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
[Serializable]
public class InstancePersistenceException : Exception
{
public InstancePersistenceException () : this ("Instance persistence error") {}
public InstancePersistenceException (string msg) : base (msg) {}
public InstancePersistenceException (string msg, Exception inner) : base (msg, inner) {}
protected InstancePersistenceException (SerializationInfo info, StreamingContext context) :
base (info, context) {}
}
}

View File

@@ -1,15 +0,0 @@
2010-06-30 Atsushi Enomoto <atsushi@ximian.com>
* InstancePersistenceEvent.cs, InstancePersistenceContext.cs,
InstanceStore.cs, InstanceView.cs, InstanceValue.cs : some hack.
2010-05-12 Atsushi Enomoto <atsushi@ximian.com>
* AllEnums.cs InstanceLockQueryResult.cs InstanceStore.cs
AllExceptions.cs InstanceOwner.cs InstanceStoreQueryResult.cs
InstanceOwnerQueryResult.cs InstanceValue.cs
InstanceHandle.cs InstancePersistenceCommand.cs InstanceView.cs
InstanceKey.cs InstancePersistenceContext.cs
InstanceKeyView.cs InstancePersistenceEvent.cs :
initial checkin (stubs).

View File

@@ -1,19 +0,0 @@
using System;
namespace System.Runtime.DurableInstancing
{
public sealed class InstanceHandle
{
internal InstanceHandle (bool isValid)
{
IsValid = isValid;
}
public bool IsValid { get; private set; }
public void Free ()
{
throw new NotImplementedException ();
}
}
}

View File

@@ -1,51 +0,0 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Xml;
using System.Xml.Linq;
namespace System.Runtime.DurableInstancing
{
public class InstanceKey
{
static InstanceKey ()
{
InvalidKey = new InstanceKey ();
}
public static InstanceKey InvalidKey { get; private set; }
InstanceKey ()
{
}
public InstanceKey (Guid value)
: this (value, new Dictionary<XName, InstanceValue> ())
{
}
public InstanceKey (Guid value, IDictionary<XName, InstanceValue> metadata)
{
}
public bool IsValid {
get { return this == InvalidKey; }
}
public IDictionary<XName, InstanceValue> Metadata { get; private set; }
public Guid Value { get; private set; }
public override bool Equals (object obj)
{
var o = obj as InstanceKey;
return o != null && Value == o.Value;
}
public override int GetHashCode ()
{
return Value.GetHashCode ();
}
}
}

View File

@@ -1,21 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Xml;
using System.Xml.Linq;
namespace System.Runtime.DurableInstancing
{
public sealed class InstanceKeyView
{
internal InstanceKeyView (Guid instanceKey)
{
InstanceKey = instanceKey;
}
public Guid InstanceKey { get; private set; }
public IDictionary<XName, InstanceValue> InstanceKeyMetadata { get; internal set; }
public InstanceValueConsistency InstanceKeyMetadataConsistency { get; internal set; }
public InstanceKeyState InstanceKeyState { get; internal set; }
}
}

View File

@@ -1,30 +0,0 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
namespace System.Runtime.DurableInstancing
{
public sealed class InstanceLockQueryResult : InstanceStoreQueryResult
{
public InstanceLockQueryResult ()
: this (new Dictionary<Guid, Guid> ())
{
}
public InstanceLockQueryResult (IDictionary<Guid, Guid> instanceOwnerIds)
{
if (instanceOwnerIds == null)
throw new ArgumentNullException ("instanceOwnerIds");
InstanceOwnerIds = instanceOwnerIds;
}
public InstanceLockQueryResult (Guid instanceId, Guid instanceOwnerId)
: this ()
{
InstanceOwnerIds [instanceId] = instanceOwnerId;
}
public IDictionary<Guid, Guid> InstanceOwnerIds { get; private set; }
}
}

View File

@@ -1,14 +0,0 @@
using System;
namespace System.Runtime.DurableInstancing
{
public sealed class InstanceOwner
{
internal InstanceOwner (Guid ownerId)
{
InstanceOwnerId = ownerId;
}
public Guid InstanceOwnerId { get; private set; }
}
}

View File

@@ -1,31 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Xml;
using System.Xml.Linq;
namespace System.Runtime.DurableInstancing
{
public sealed class InstanceOwnerQueryResult : InstanceStoreQueryResult
{
public InstanceOwnerQueryResult ()
: this (new Dictionary<Guid, IDictionary<XName, InstanceValue>> ())
{
}
public InstanceOwnerQueryResult (IDictionary<Guid, IDictionary<XName, InstanceValue>> instanceOwners)
{
if (instanceOwners == null)
throw new ArgumentNullException ("instanceOwners");
InstanceOwners = instanceOwners;
}
public InstanceOwnerQueryResult (Guid instanceOwnerId, IDictionary<XName, InstanceValue> metadata)
: this ()
{
InstanceOwners [instanceOwnerId] = metadata;
}
public IDictionary<Guid, IDictionary<XName, InstanceValue>> InstanceOwners { get; private set; }
}
}

View File

@@ -1,32 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Xml.Linq;
namespace System.Runtime.DurableInstancing
{
public abstract class InstancePersistenceCommand
{
protected InstancePersistenceCommand (XName name)
{
if (name == null)
throw new ArgumentNullException ("name");
Name = name;
}
protected internal virtual bool AutomaticallyAcquiringLock {
get { return false; }
}
protected internal virtual bool IsTransactionEnlistmentOptional {
get { return false; }
}
public XName Name { get; private set; }
protected internal virtual void Validate (InstanceView view)
{
throw new NotImplementedException ();
}
}
}

View File

@@ -1,146 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Xml;
using System.Xml.Linq;
namespace System.Runtime.DurableInstancing
{
public sealed class InstancePersistenceContext
{
internal InstancePersistenceContext (InstanceHandle handle, InstanceView view)
{
if (handle == null)
throw new ArgumentNullException ("handle");
if (view == null)
throw new ArgumentNullException ("view");
InstanceHandle = handle;
InstanceView = view;
}
public InstanceHandle InstanceHandle { get; private set; }
public long InstanceVersion { get { throw new NotImplementedException (); } }
public InstanceView InstanceView { get; private set; }
public Guid LockToken { get { throw new NotImplementedException (); } }
public object UserContext { get { throw new NotImplementedException (); } }
public void AssociatedInstanceKey (Guid key)
{
throw new NotImplementedException ();
}
public void BindAcquiredLock (long instanceVersion)
{
throw new NotImplementedException ();
}
public void BindEvent (InstancePersistenceEvent persistenceEvent)
{
throw new NotImplementedException ();
}
public void BindInstance (Guid instanceId)
{
throw new NotImplementedException ();
}
public void BindInstanceOwner (Guid instanceOwnerId, Guid lockToken)
{
throw new NotImplementedException ();
}
public void BindReclaimedLock (long instanceVersion, TimeSpan timeout)
{
throw new NotImplementedException ();
}
public void CompletedInstance ()
{
throw new NotImplementedException ();
}
public void CompletedInstanceKey (Guid key)
{
throw new NotImplementedException ();
}
public Exception CreateBindReclaimedLockException (long instanceVersion)
{
throw new NotImplementedException ();
}
public void Execute (InstancePersistenceCommand command, TimeSpan timeout)
{
throw new NotImplementedException ();
}
public void LoadedInstance (InstanceState state, IDictionary<XName, InstanceValue> instanceData, IDictionary<XName, InstanceValue> instanceMetadata, IDictionary<Guid, IDictionary<XName, InstanceValue>> associatedInstanceKeyMetadata, IDictionary<Guid, IDictionary<XName, InstanceValue>> completedInstanceKeyMetadata)
{
throw new NotImplementedException ();
}
public void PersistedInstance (IDictionary<XName, InstanceValue> data)
{
throw new NotImplementedException ();
}
public void QueriedInstanceStore (InstanceStoreQueryResult queryResult)
{
throw new NotImplementedException ();
}
public void ReadInstanceKeyMetadata (Guid key, IDictionary<XName, InstanceValue> metadata, bool complete)
{
throw new NotImplementedException ();
}
public void SetCancellationHandler (Action<InstancePersistenceContext> cancellationHandler)
{
throw new NotImplementedException ();
}
public void UnassociatedInstanceKey (Guid key)
{
throw new NotImplementedException ();
}
public void WroteInstanceKeyMetadataValue (Guid key, XName name, InstanceValue value)
{
throw new NotImplementedException ();
}
public void WroteInstanceMetadataValue (XName name, InstanceValue value)
{
throw new NotImplementedException ();
}
public void WroteInstanceOwnerMetadataValue (XName name, InstanceValue value)
{
throw new NotImplementedException ();
}
// async operations
Action<long, TimeSpan> bind_reclaimed_lock_delegate;
public IAsyncResult BeginBindReclaimedLock (long instanceVersion, TimeSpan timeout, AsyncCallback callback, object state)
{
if (bind_reclaimed_lock_delegate == null)
bind_reclaimed_lock_delegate = new Action<long, TimeSpan> (BindReclaimedLock);
return bind_reclaimed_lock_delegate.BeginInvoke (instanceVersion, timeout, callback, state);
}
public void EndBindReclaimedLock (IAsyncResult result)
{
if (bind_reclaimed_lock_delegate == null)
throw new InvalidOperationException ("Async BindReclaimedLock operation has not started");
bind_reclaimed_lock_delegate.EndInvoke (result);
}
Action<InstancePersistenceCommand, TimeSpan> execute_delegate;
public IAsyncResult BeginExecute (InstancePersistenceCommand command, TimeSpan timeout, AsyncCallback callback, object state)
{
if (execute_delegate == null)
execute_delegate = new Action<InstancePersistenceCommand, TimeSpan> (Execute);
return execute_delegate.BeginInvoke (command, timeout, callback, state);
}
public void EndExecute (IAsyncResult result)
{
if (execute_delegate == null)
throw new InvalidOperationException ("Async Execute operation has not started");
execute_delegate.EndInvoke (result);
}
}
}

View File

@@ -1,75 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Xml;
using System.Xml.Linq;
namespace System.Runtime.DurableInstancing
{
public abstract class InstancePersistenceEvent : IEquatable<InstancePersistenceEvent>
{
internal InstancePersistenceEvent (XName name)
{
if (name == null)
throw new ArgumentNullException ("name");
Name = name;
}
public XName Name { get; private set; }
public static bool operator == (InstancePersistenceEvent left, InstancePersistenceEvent right)
{
if (Object.ReferenceEquals (left, null))
return Object.ReferenceEquals (right, null);
if (Object.ReferenceEquals (right, null))
return false;
return left.Name == right.Name;
}
public static bool operator != (InstancePersistenceEvent left, InstancePersistenceEvent right)
{
if (Object.ReferenceEquals (left, null))
return !Object.ReferenceEquals (right, null);
if (Object.ReferenceEquals (right, null))
return true;
return left.Name != right.Name;
}
public bool Equals (InstancePersistenceEvent persistenceEvent)
{
var p = persistenceEvent;
return p != null && p.Name == Name;
}
public override bool Equals (object obj)
{
return Equals (obj as InstancePersistenceEvent);
}
public override int GetHashCode ()
{
return Name.GetHashCode ();
}
}
public abstract class InstancePersistenceEvent<T> : InstancePersistenceEvent
where T : InstancePersistenceEvent<T>, new()
{
static InstancePersistenceEvent ()
{
Value = (T) Activator.CreateInstance (typeof (T), new object [0]);
}
public static T Value { get; private set; }
protected InstancePersistenceEvent (XName name)
: base (name)
{
}
}
}

View File

@@ -1,131 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Xml;
using System.Xml.Linq;
namespace System.Runtime.DurableInstancing
{
public abstract class InstanceStore
{
public InstanceOwner DefaultInstanceOwner { get; set; }
Func<InstanceHandle, InstancePersistenceCommand, TimeSpan, InstanceView> execute_delegate;
public IAsyncResult BeginExecute (InstanceHandle handle, InstancePersistenceCommand command, TimeSpan timeout, AsyncCallback callback, object state)
{
if (execute_delegate == null)
execute_delegate = new Func<InstanceHandle, InstancePersistenceCommand, TimeSpan, InstanceView> (Execute);
return execute_delegate.BeginInvoke (handle, command, timeout, callback, state);
}
Func<InstancePersistenceContext, InstancePersistenceCommand, TimeSpan, bool> try_command_delegate;
protected internal virtual IAsyncResult BeginTryCommand (InstancePersistenceContext context, InstancePersistenceCommand command, TimeSpan timeout, AsyncCallback callback, object state)
{
if (try_command_delegate == null)
try_command_delegate = new Func<InstancePersistenceContext, InstancePersistenceCommand, TimeSpan, bool> (TryCommand);
return try_command_delegate.BeginInvoke (context, command, timeout, callback, state);
}
Func<InstanceHandle, TimeSpan, List<InstancePersistenceEvent>> wait_for_events_delegate;
public IAsyncResult BeginWaitForEvents (InstanceHandle handle, TimeSpan timeout, AsyncCallback callback, object state)
{
if (wait_for_events_delegate == null)
wait_for_events_delegate = new Func<InstanceHandle, TimeSpan, List<InstancePersistenceEvent>> (WaitForEvents);
return wait_for_events_delegate.BeginInvoke (handle, timeout, callback, state);
}
public InstanceHandle CreateInstanceHandle ()
{
throw new NotImplementedException ();
}
public InstanceHandle CreateInstanceHandle (Guid instanceId)
{
throw new NotImplementedException ();
}
public InstanceHandle CreateInstanceHandle (InstanceOwner owner)
{
throw new NotImplementedException ();
}
public InstanceHandle CreateInstanceHandle (InstanceOwner owner, Guid instanceId)
{
throw new NotImplementedException ();
}
public InstanceView EndExecute (IAsyncResult result)
{
if (execute_delegate == null)
throw new InvalidOperationException ("Async operation has not started");
return execute_delegate.EndInvoke (result);
}
public bool EndTryCommand (IAsyncResult result)
{
if (try_command_delegate == null)
throw new InvalidOperationException ("Async operation has not started");
return try_command_delegate.EndInvoke (result);
}
public List<InstancePersistenceEvent> EndWaitForEvents (IAsyncResult result)
{
if (wait_for_events_delegate == null)
throw new InvalidOperationException ("Async operation has not started");
return wait_for_events_delegate.EndInvoke (result);
}
public InstanceView Execute (InstanceHandle handle, InstancePersistenceCommand command, TimeSpan timeout)
{
throw new NotImplementedException ();
}
protected InstancePersistenceEvent [] GetEvents (InstanceOwner owner)
{
throw new NotImplementedException ();
}
protected InstanceOwner [] GetInstanceOwners ()
{
throw new NotImplementedException ();
}
protected virtual void OnFreeInstanceHandle (InstanceHandle instanceHandle, object userContext)
{
throw new NotImplementedException ();
}
protected virtual object OnNewInstanceHandle (InstanceHandle instanceHandle)
{
throw new NotImplementedException ();
}
protected void ResetEvent (InstancePersistenceEvent persistenceEvent, InstanceOwner owner)
{
throw new NotImplementedException ();
}
protected void SignalEvent (InstancePersistenceEvent persistenceEvent, InstanceOwner owner)
{
throw new NotImplementedException ();
}
protected internal virtual bool TryCommand (InstancePersistenceContext context, InstancePersistenceCommand command, TimeSpan timeout)
{
throw new NotImplementedException ();
}
public List<InstancePersistenceEvent> WaitForEvents (InstanceHandle handle, TimeSpan timeout)
{
throw new NotImplementedException ();
}
}
}

View File

@@ -1,6 +0,0 @@
namespace System.Runtime.DurableInstancing
{
public abstract class InstanceStoreQueryResult
{
}
}

View File

@@ -1,41 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Xml;
using System.Xml.Linq;
namespace System.Runtime.DurableInstancing
{
public sealed class InstanceValue
{
static InstanceValue ()
{
DeletedValue = new InstanceValue (null);
DeletedValue.Value = DeletedValue; // recursion!
}
public static InstanceValue DeletedValue { get; private set; }
public InstanceValue (object value)
: this (value, InstanceValueOptions.None)
{
}
public InstanceValue (object value, InstanceValueOptions options)
{
Value = value;
Options = options;
}
public bool IsDeletedValue {
get { return this == DeletedValue; }
}
public InstanceValueOptions Options { get; private set; }
public object Value { get; private set; }
}
}

View File

@@ -1,43 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Xml;
using System.Xml.Linq;
namespace System.Runtime.DurableInstancing
{
public sealed class InstanceView
{
internal InstanceView (Guid instanceId, InstanceOwner owner)
{
}
public IDictionary<XName, InstanceValue> InstanceData { get; internal set; }
public InstanceValueConsistency InstanceDataConsistency { get; internal set; }
public Guid InstanceId { get; private set; }
public IDictionary<Guid, InstanceKeyView> InstanceKeys { get; internal set; }
public InstanceValueConsistency InstanceKeysConsistency { get; internal set; }
public IDictionary<XName, InstanceValue> InstanceMetadata { get; internal set; }
public InstanceValueConsistency InstanceMetadataConsistency { get; internal set; }
public InstanceOwner InstanceOwner { get; private set; }
public IDictionary<XName, InstanceValue> InstanceOwnerMetadata { get; internal set; }
public InstanceValueConsistency InstanceOwnerMetadataConsistency { get; internal set; }
public InstanceState InstanceState { get; internal set; }
public ReadOnlyCollection<InstanceStoreQueryResult> InstanceStoreQueryResults { get; internal set; }
public bool IsBoundToInstance {
get { return InstanceId == Guid.Empty; }
}
public bool IsBoundToInstanceOwner {
get { return InstanceOwner == null; }
}
public bool IsBoundToLock { get { throw new NotImplementedException (); } }
}
}