Glyma.NodeServiceApp.NodeService.CreateProxy C# (CSharp) Method

CreateProxy() public method

public CreateProxy ( string name, SPServiceApplication serviceApplication, SPServiceProvisioningContext provisioningContext ) : SPServiceApplicationProxy
name string
serviceApplication SPServiceApplication
provisioningContext SPServiceProvisioningContext
return SPServiceApplicationProxy
        public SPServiceApplicationProxy CreateProxy(string name, SPServiceApplication serviceApplication, SPServiceProvisioningContext provisioningContext)
        {
            if (serviceApplication.GetType() != typeof(NodeServiceApplication))
            {
                throw new NotSupportedException();
            }
            if (serviceApplication == null)
            {
                throw new ArgumentNullException("serviceApplication");
            }

            // Verify the service proxy exists.
            NodeServiceProxy serviceProxy = (NodeServiceProxy)this.Farm.GetObject(name, this.Farm.Id, typeof(NodeServiceProxy));
            if (serviceProxy == null)
                throw new InvalidOperationException("NodeServiceProxy does not exist in the farm.");

            // If the application proxy doesn't exist, create it.
            NodeServiceApplicationProxy applicationProxy = serviceProxy.ApplicationProxies.GetValue<NodeServiceApplicationProxy>(name);
            if (applicationProxy == null)
            {
                Uri serviceAppAddress = ((NodeServiceApplication)serviceApplication).Uri;
                applicationProxy = new NodeServiceApplicationProxy(name, serviceProxy, serviceAppAddress);
            }

            return applicationProxy;
        }