コード例 #1
0
 public _MarshallingInfoTraverseAspectCommand_349(StandardReferenceTypeHandler _enclosing
                                                  , BooleanByRef aspectFound, CollectIdContext subContext, IMarshallingInfo baseArg1
                                                  ) : base(baseArg1)
 {
     this._enclosing  = _enclosing;
     this.aspectFound = aspectFound;
     this.subContext  = subContext;
 }
コード例 #2
0
        public override bool Equals(object obj)
        {
            if (!(obj is StandardReferenceTypeHandler))
            {
                return(false);
            }
            StandardReferenceTypeHandler other = (StandardReferenceTypeHandler)obj;

            if (ClassMetadata() == null)
            {
                return(other.ClassMetadata() == null);
            }
            return(ClassMetadata().Equals(other.ClassMetadata()));
        }
コード例 #3
0
 public virtual void TestCorrectHandlerVersion()
 {
     var openTypeHandler = new OpenTypeHandler(Container());
     AssertCorrectedHandlerVersion(typeof (OpenTypeHandler0), openTypeHandler, -1);
     AssertCorrectedHandlerVersion(typeof (OpenTypeHandler0), openTypeHandler, 0);
     AssertCorrectedHandlerVersion(typeof (OpenTypeHandler2), openTypeHandler, 1);
     AssertCorrectedHandlerVersion(typeof (OpenTypeHandler2), openTypeHandler, 2);
     AssertCorrectedHandlerVersion(typeof (OpenTypeHandler), openTypeHandler, HandlerRegistry
         .HandlerVersion);
     AssertCorrectedHandlerVersion(typeof (OpenTypeHandler), openTypeHandler, HandlerRegistry
         .HandlerVersion + 1);
     var stdReferenceHandler = new StandardReferenceTypeHandler
         (ItemClassMetadata());
     AssertCorrectedHandlerVersion(typeof (StandardReferenceTypeHandler0), stdReferenceHandler
         , 0);
     AssertCorrectedHandlerVersion(typeof (StandardReferenceTypeHandler), stdReferenceHandler
         , 2);
     var primitiveMetadata = new PrimitiveTypeMetadata(Container(),
         openTypeHandler, 0, null);
     AssertPrimitiveHandlerDelegate(typeof (OpenTypeHandler0), primitiveMetadata, 0);
     AssertPrimitiveHandlerDelegate(typeof (OpenTypeHandler2), primitiveMetadata, 1);
     AssertPrimitiveHandlerDelegate(typeof (OpenTypeHandler2), primitiveMetadata, 2);
     AssertPrimitiveHandlerDelegate(typeof (OpenTypeHandler), primitiveMetadata, HandlerRegistry
         .HandlerVersion);
     var arrayHandler = new ArrayHandler(openTypeHandler, false);
     AssertCorrectedHandlerVersion(typeof (ArrayHandler0), arrayHandler, 0);
     AssertCorrectedHandlerVersion(typeof (ArrayHandler1), arrayHandler, 1);
     AssertCorrectedHandlerVersion(typeof (ArrayHandler3), arrayHandler, 2);
     AssertCorrectedHandlerVersion(typeof (ArrayHandler3), arrayHandler, 3);
     AssertCorrectedHandlerVersion(typeof (ArrayHandler), arrayHandler, HandlerRegistry
         .HandlerVersion);
     ArrayHandler multidimensionalArrayHandler = new MultidimensionalArrayHandler(openTypeHandler
         , false);
     AssertCorrectedHandlerVersion(typeof (MultidimensionalArrayHandler0), multidimensionalArrayHandler
         , 0);
     AssertCorrectedHandlerVersion(typeof (MultidimensionalArrayHandler3), multidimensionalArrayHandler
         , 1);
     AssertCorrectedHandlerVersion(typeof (MultidimensionalArrayHandler3), multidimensionalArrayHandler
         , 2);
     AssertCorrectedHandlerVersion(typeof (MultidimensionalArrayHandler3), multidimensionalArrayHandler
         , 3);
     AssertCorrectedHandlerVersion(typeof (MultidimensionalArrayHandler), multidimensionalArrayHandler
         , HandlerRegistry.HandlerVersion);
 }
コード例 #4
0
        public virtual object DeepClone(object context)
        {
            TypeHandlerCloneContext      typeHandlerCloneContext = (TypeHandlerCloneContext)context;
            StandardReferenceTypeHandler cloned = (StandardReferenceTypeHandler)Reflection4.NewInstance
                                                      (this);

            if (typeHandlerCloneContext.original is StandardReferenceTypeHandler)
            {
                StandardReferenceTypeHandler original = (StandardReferenceTypeHandler)typeHandlerCloneContext
                                                        .original;
                cloned.ClassMetadata(original.ClassMetadata());
            }
            else
            {
                // New logic: ClassMetadata takes the responsibility in
                //           #correctHandlerVersion() to set the
                //           ClassMetadata directly on cloned handler.
                //            if(_classMetadata == null){
                //                throw new IllegalStateException();
                //            }
                cloned.ClassMetadata(_classMetadata);
            }
            return(cloned);
        }
コード例 #5
0
 public _MarshallingInfoTraverseAspectCommand_349(StandardReferenceTypeHandler _enclosing
     , BooleanByRef aspectFound, CollectIdContext subContext, IMarshallingInfo baseArg1
     ) : base(baseArg1)
 {
     this._enclosing = _enclosing;
     this.aspectFound = aspectFound;
     this.subContext = subContext;
 }