예제 #1
0
        static internal IObject CreateAsyncOperation(ClassFactory classFactory, AsyncOperationAdapter asyncOperationAdapter)
        {
            Type resultType         = GetType(classFactory, asyncOperationAdapter.GetResultTypeInfo());
            Type asyncOperationType = typeof(AsyncOperation <>).MakeGenericType(resultType);

            return(ActivateObjectInstance(classFactory, asyncOperationAdapter, asyncOperationType));
        }
예제 #2
0
        static internal IObject CreateFactoryObject(ClassFactory classFactory, ObjectAdapter objectAdapter)
        {
            CommandAdapter commandModelAdapter = objectAdapter as CommandAdapter;

            if (commandModelAdapter != null)
            {
                return(CreateCommandModel(classFactory, commandModelAdapter));
            }
            AsyncOperationAdapter asyncOperationAdapter = objectAdapter as AsyncOperationAdapter;

            if (asyncOperationAdapter != null)
            {
                return(CreateAsyncOperation(classFactory, asyncOperationAdapter));
            }

            ObservableCollectionAdapter collectionModelAdapter = objectAdapter as ObservableCollectionAdapter;

            if (collectionModelAdapter != null)
            {
                return(CreateCollectionModel(classFactory, collectionModelAdapter));
            }

            ObservableObjectAdapter propertyModelAdapter = objectAdapter as ObservableObjectAdapter;

            if (propertyModelAdapter != null)
            {
                return(new ObservableObject(propertyModelAdapter, classFactory));
            }

            ObjectDispatchAdapter propertyDataAdapter = objectAdapter as ObjectDispatchAdapter;

            if (propertyDataAdapter != null)
            {
                return(new ObjectDispatch <ObjectDispatchAdapter>(propertyDataAdapter, classFactory));
            }

            return(new Object <ObjectAdapter>(objectAdapter));
        }
예제 #3
0
 public AsyncOperation(AsyncOperationAdapter adapter, ClassFactory classFactory) :
     base(adapter, classFactory)
 {
 }