Exemple #1
0
        public IMockObject CreateInstance(string cacheKey, IInvokeDynamicFactory invokeDynamicFactory, bool skipCacheCheck)
        {
            IMockObject objectContract;
            KeyValuePair <Type, string> keyValuePair;
            IDynamicInvocation          dynamicInvocation = null;
            Type objectType;

            //if (base.Disposed)
            //    throw new ObjectDisposedException(typeof(MockProxyFactory).FullName);

            if ((object)cacheKey == null)
            {
                throw new ArgumentNullException("cacheKey");
            }

            if ((object)invokeDynamicFactory == null)
            {
                throw new ArgumentNullException("invokeDynamicFactory");
            }

            keyValuePair = new KeyValuePair <Type, string>(typeof(IMockObject), cacheKey);

            if (!skipCacheCheck && !base.IsInstanceInCache(keyValuePair))
            {
                objectType = typeof(IMockObject);

                // spin up an (Wcf)Service instance
                dynamicInvocation = invokeDynamicFactory.GetDynamicInvoker(cacheKey, objectType);
            }

            objectContract = base.CreateOrGetInstance(keyValuePair, () => this.CreateInstance(dynamicInvocation));

            return(objectContract);
        }
Exemple #2
0
 public IMockObject CreateInstance(string cacheKey, IInvokeDynamicFactory invokeDynamicFactory)
 {
     return(this.CreateInstance(cacheKey, invokeDynamicFactory, false));
 }