public void Equatable()
        {
            var x    = InterfaceImplementer.Create <ITests>();
            var xbis = InterfaceImplementer.Create <ITests>();
            var y    = InterfaceImplementer.Create <ITests>();

            ((IProxy)x).SetReference("x");
            ((IProxy)xbis).SetReference("x");
            ((IProxy)y).SetReference("y");

            // check default compararer (used by dictionaries, and co)
            Assert.IsTrue(EqualityComparer <ITests> .Default.Equals(x, xbis));
            Assert.IsFalse(EqualityComparer <ITests> .Default.Equals(x, y));

            // check 'equals' (ITest implements IEquatable<ITest>)
            Assert.True(x.Equals(xbis));
            Assert.True(xbis.Equals(x));
            Assert.True(!x.Equals(y));
            Assert.True(!y.Equals(x));

            // check 'object.Equals' override
            Assert.True(((object)x).Equals(xbis));
            Assert.False(((object)x).Equals(y));

            Assert.False(((object)x).Equals(null));
            Assert.False(((object)x).Equals(new object()));
        }
Exemplo n.º 2
0
    static void Main()
    {
        InterfaceImplementer iImp = new InterfaceImplementer();

        iImp.MethodToImplement();
        iImp.ParentInterfaceMethod();
    }
Exemplo n.º 3
0
        public object Create(object parent, object configContext, XmlNode section)
        {
            var contractNode            = section.SelectSingleNode("contract");
            var packageFactoryImplement = InterfaceImplementer.Create(contractNode.SelectSingleNode("packageFactory"));

            if (packageFactoryImplement != null)
            {
                this.ContractPackageFactoryImplementer = packageFactoryImplement;
            }

            this.LocalPath = string.Empty;
            var localNode = contractNode.SelectSingleNode("local");

            if (localNode != null)
            {
                this.LocalPath = localNode.GetAttributeValue("path");
            }

            this.ContractEventsAssemblyNames = Array.Empty <string>();
            var eventNode = section.SelectSingleNode("event");

            if (eventNode != null)
            {
                var assemblies = eventNode.GetAttributeValue("assemblies").Trim(';');
                this.ContractEventsAssemblyNames = assemblies.Split(';');
            }

            return(this);
        }
        public void SetPublic()
        {
            var x = InterfaceImplementer.Create <ITests>();

            x.PublicSet = "test";
            Assert.AreEqual("test", x.PublicSet);
        }
Exemplo n.º 5
0
    protected void Page_Load(object sender, EventArgs e)
    {
        IMyInterface abcdef = new InterfaceImplementer();
        //InterfaceImplementer abc = new InterfaceImplementer();

        aaa = abcdef.MethodToImplement();
        Response.Write(aaa);
    }
Exemplo n.º 6
0
        public static T Stub <T>(string reference)
            where T : IRpcRoot
        {
            var instance = InterfaceImplementer.Create <T>();

            ((IProxy)instance).SetReference(reference);
            return(instance);
        }
Exemplo n.º 7
0
        private void LoadProxy(XmlNode root)
        {
            var proxyImplement = InterfaceImplementer.Create(root.SelectSingleNode("proxy"));

            if (proxyImplement != null)
            {
                this.ProxyImplementer = proxyImplement;
            }
        }
Exemplo n.º 8
0
 public override void Run()
 {
     PrimitivesLineage.RunMe();
     UserDefinedTypes.RunMe();
     Classes.RunMe();
     InterfaceImplementer.RunMe();
     Delegates.RunMe();
     Attributes.RunMe();
 }
Exemplo n.º 9
0
        public IWebPageLocator GetPageLocator(string extension)
        {
            InterfaceImplementer imp = null;

            if (_locators.TryGetValue(extension, out imp))
            {
                return(imp.GetInstance <IWebPageLocator>());
            }
            return(null);
        }
Exemplo n.º 10
0
    static void xMain()
    {
        InterfaceImplementer iImp = new InterfaceImplementer();

        iImp.MethodToImplement();
        iImp.ParentInterfaceMethod();

        // keep screen from going away
        // when run from VS.NET
        Console.ReadLine();
    }
Exemplo n.º 11
0
        private void LoadRemoteService(XmlNode root)
        {
            var service = root.SelectSingleNode("remoteService");

            if (service != null)
            {
                var imp = InterfaceImplementer.Create(service);
                if (imp != null)
                {
                    this.RemoteServiceImplementer = imp;
                }
            }
        }
Exemplo n.º 12
0
        private void LoadBuffer(XmlNode root)
        {
            var service = root.SelectSingleNode("implementer");

            if (service != null)
            {
                var imp = InterfaceImplementer.Create(service);
                if (imp != null)
                {
                    this.BufferImplementer = imp;
                }
            }
        }
Exemplo n.º 13
0
        private void LoadFrom(XmlNode root)
        {
            var agent = root.SelectSingleNode("agent");

            if (agent != null)
            {
                var imp = InterfaceImplementer.Create(agent);
                if (imp != null)
                {
                    this.DbAgentImplementer = imp;
                }
            }
        }
Exemplo n.º 14
0
        private void LoadHost(XmlNode root)
        {
            var section = root.SelectSingleNode("host");

            if (section == null)
            {
                return;
            }
            var providerFactory = InterfaceImplementer.Create(section.SelectSingleNode("providerFactory"));

            if (providerFactory != null)
            {
                this.ProviderFactoryImplementer = providerFactory;
            }
        }
Exemplo n.º 15
0
        public void LoadFrom(XmlNode section)
        {
            var node = section.SelectSingleNode("storage");

            if (node != null)
            {
                this.SessionStorage = AppSettingUtil.ParseInterfaceImplement(node);
            }

            node = section.SelectSingleNode("keyProvider");
            if (node != null)
            {
                this.KeyProvider = AppSettingUtil.ParseInterfaceImplement(node);
            }
        }
Exemplo n.º 16
0
        private void LoadServer(XmlNode root)
        {
            var node = root.SelectSingleNode("server");

            if (node == null)
            {
                return;
            }

            var factoryNode = node.SelectSingleNode("factory");

            if (factoryNode != null)
            {
                this.ServerFactoryImplementer = InterfaceImplementer.Create(factoryNode);
            }
        }
Exemplo n.º 17
0
        private void LoadSecurity(XmlNode root)
        {
            var section = root.SelectSingleNode("security");

            if (section == null)
            {
                return;
            }

            var identityProviderImplement = InterfaceImplementer.Create(section.SelectSingleNode("identityProvider"));

            if (identityProviderImplement != null)
            {
                this.IdentityProviderImplementer = identityProviderImplement;
            }
        }
Exemplo n.º 18
0
        private void LoadSubscriber(XmlNode root)
        {
            var node = root.SelectSingleNode("subscriber");

            if (node == null)
            {
                return;
            }

            this.SubscriberGroup = node.GetAttributeValue("group", string.Empty);

            var factoryNode = node.SelectSingleNode("factory");

            if (factoryNode != null)
            {
                this.SubscriberFactoryImplementer = InterfaceImplementer.Create(factoryNode);
            }
        }
Exemplo n.º 19
0
            public static Action <TProxy, TValue> Setter(PropertyInfo prop)
            {
                // use cache
                Action <TProxy, TValue> ret;

                lock (Setters)
                {
                    if (Setters.TryGetValue(prop, out ret))
                    {
                        return(ret);
                    }
                }

                // get the concreete property associated with the given interface property
                var proxyType = InterfaceImplementer.Implement <TProxy>();
                var map       = proxyType.GetInterfaceMap(typeof(TProxy));
                var i         = Array.IndexOf(map.InterfaceMethods, prop.GetGetMethod(true));

                if (i < 0)
                {
                    throw new ArgumentException("Property " + prop + " is not part of interface " + typeof(TProxy));
                }
                var targetGetter = map.TargetMethods[i];
                var proxyProp    = proxyType.GetProperties().First(x => x.GetGetMethod(true) == targetGetter);

                // create an assignment expression
                var p = Expression.Parameter(typeof(TProxy));
                var v = Expression.Parameter(typeof(TValue));

                ret = Expression.Lambda <Action <TProxy, TValue> >(
                    Expression.Assign(Expression.MakeMemberAccess(Expression.Convert(p, proxyType), proxyProp), v)
                    , p
                    , v)
                      .Compile();

                // cache result
                lock (Setters)
                {
                    Setters[prop] = ret;
                    return(ret);
                }
            }
Exemplo n.º 20
0
        private void LoadClient(XmlNode root)
        {
            var node = root.SelectSingleNode("client");

            if (node == null)
            {
                return;
            }

            var factoryNode = node.SelectSingleNode("factory");

            if (factoryNode != null)
            {
                this.ClientFactoryImplementer = InterfaceImplementer.Create(factoryNode);
            }

            int clientTimeout = int.Parse(node.GetAttributeValue("timeout", "60")); //默认60秒超时

            this.ClientTimeout = clientTimeout;
        }
Exemplo n.º 21
0
        public void LoadFrom(XmlNode section)
        {
            LoadPageLocators(section);

            var node = section.SelectSingleNode("codePreprocessor");

            if (node != null)
            {
                this.CodePreprocessor = AppSettingUtil.ParseInterfaceImplement(node);
            }

            node = section.SelectSingleNode("compressorFactory");
            if (node != null)
            {
                this.CompressorFactory = AppSettingUtil.ParseInterfaceImplement(node);
            }

            node = section.SelectSingleNode("clientCacheFactory");
            if (node != null)
            {
                this.ClientCacheFactory = AppSettingUtil.ParseInterfaceImplement(node);
            }

            node = section.SelectSingleNode("serverCacheFactory");
            if (node != null)
            {
                this.ServerCacheFactory = AppSettingUtil.ParseInterfaceImplement(node);
            }

            //node = section.SelectSingleNode("securityFactory");
            //if (node != null) this.SecurityFactory = AppSettingUtil.ParseInterfaceImplement(node);

            //node = section.SelectSingleNode("performance");
            //if (node != null)
            //{
            //    var attr = node.Attributes["tracking"];
            //    this.OpenPerformanceTracking = attr == null ? false : (attr.Value == "true");
            //}
        }
Exemplo n.º 22
0
        internal void LoadFrom(XmlNode root)
        {
            var mapper = root.SelectSingleNode("mapper");

            if (mapper != null)
            {
                var map = InterfaceMapper.Create(mapper);
                if (map != null)
                {
                    this.RepositoryMapper = map;
                }
            }

            var transactionManagerFactory = root.SelectSingleNode("transactionManagerFactory");

            if (transactionManagerFactory != null)
            {
                var imp = InterfaceImplementer.Create(transactionManagerFactory);
                if (imp != null)
                {
                    this.TransactionManagerFactoryImplementer = imp;
                }
            }
        }
Exemplo n.º 23
0
 public void Start()
 {
     impl = InterfaceImplementer.GetComponent <IHaveColliderNotifyer>();
 }
Exemplo n.º 24
0
    static void xMain()
    {
        InterfaceImplementer iImp = new InterfaceImplementer();

        iImp.MethodToImplement();
    }
Exemplo n.º 25
0
    static void Main(string[] args)
    {
        InterfaceImplementer impl = new InterfaceImplementer();

        impl.MethodToImplement();
    }
 public static void Main()
 {
     var internalType = typeof(PublicTypeInAnotherAssembly).Assembly.GetType("Full name of internal type: System.Internals.IInterface");
     var result       = new InterfaceImplementer(internalType, InterfaceCalled).GetTransparentProxy();
 }
Exemplo n.º 27
0
 public void JustCreate()
 {
     InterfaceImplementer.Create <ITests>();
 }
Exemplo n.º 28
0
        public void CallNonVoid()
        {
            var x = InterfaceImplementer.Create <ITests>();

            x.VoidMethod();
        }
Exemplo n.º 29
0
 public ScriptWithRpc(Func <IntPtr> builder)
     : base(builder)
 {
     Rpc = InterfaceImplementer <TRpc> .Create(this);
 }
Exemplo n.º 30
0
 static void Main()
 {
     InterfaceImplementer iImp = new InterfaceImplementer();
     iImp.MethodToImplement();
     iImp.ParentInterfaceMethod();
 }