protected TypeDescription GetTypeDescription(Type exposedType) { TypeDescription typeDescription; lock (TypeDescriptions) typeDescription = TypeDescriptions.GetTypeDescription(exposedType); return(typeDescription); }
/// <summary> /// Create a WoopsaObjectAdapter for a dynamic object reference, returned by a delegate /// </summary> /// <param name="container"></param> /// <param name="name"></param> /// <param name="targetObjectGetter"></param> /// <param name="declaredExposedType"> /// Type to expose for the targetObject. /// Specify null to use targetObject.GetType(). /// The specified type can be different than the targetObject.GetType() /// when an interface is published instead of the public methods of the type. /// Specifying null implies that the type is determined dynamically, as targetObjectGetter /// does not necesarily return always the same object. /// </param> /// <param name="options"></param> /// <param name="defaultVisibility"></param> protected WoopsaObjectAdapter(WoopsaContainer container, string name, Func <object> targetObjectGetter, Type declaredExposedType, TypeDescriptions typeDescriptions, WoopsaObjectAdapterOptions options = WoopsaObjectAdapterOptions.None, WoopsaVisibility defaultVisibility = DefaultDefaultVisibility) : base(container, name) { TargetObjectGetter = targetObjectGetter; DeclaredExposedType = declaredExposedType; DefaultVisibility = defaultVisibility; Options = options; TypeDescriptions = typeDescriptions; _lock = new object(); }