public AgentControlDefinitionAccessor(IAgentControlDefinitionServiceUrlProvider controlDefinitionServiceUrlProvider, IMachineNameProvider machineNameProvider, IRESTClientFactory restClientFactory, IRESTRequestFactory requestFactory)
        {
            if (controlDefinitionServiceUrlProvider == null)
            {
                throw new ArgumentNullException("controlDefinitionServiceUrlProvider");
            }

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

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

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

            this.controlDefinitionServiceUrlProvider = controlDefinitionServiceUrlProvider;
            this.machineNameProvider = machineNameProvider;
            this.restClientFactory   = restClientFactory;
            this.requestFactory      = requestFactory;
        }
        public AgentControlDefinitionAccessor(IAgentControlDefinitionServiceUrlProvider controlDefinitionServiceUrlProvider, IMachineNameProvider machineNameProvider,  IRESTClientFactory restClientFactory, IRESTRequestFactory requestFactory)
        {
            if (controlDefinitionServiceUrlProvider == null)
            {
                throw new ArgumentNullException("controlDefinitionServiceUrlProvider");
            }

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

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

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

            this.controlDefinitionServiceUrlProvider = controlDefinitionServiceUrlProvider;
            this.machineNameProvider = machineNameProvider;
            this.restClientFactory = restClientFactory;
            this.requestFactory = requestFactory;
        }