Beispiel #1
0
        public Response RemoveDevice(int id)
        {
            var cache   = new InMemoryRepositoryModelCache();
            var network = _networkRepository.Get(_user, id, cache);

            if (network == null)
            {
                return(RpcNetworkRepositoryHelpers.CreateNotFoundError());
            }

            NetworkAction(network, "RemoveDevice");

            return(Response.Empty());
        }
Beispiel #2
0
        public Response Update(int id, string name)
        {
            var cache   = new InMemoryRepositoryModelCache();
            var network = _networkRepository.Get(_user, id, cache);

            if (network == null)
            {
                return(RpcNetworkRepositoryHelpers.CreateNotFoundError());
            }

            network.UpdateName(name);
            _networkRepository.Update(network);

            return(Response.Empty());
        }
Beispiel #3
0
        public Response <string[]> SyncWholeNetwork(int id, int computerId, string[] devicesXml)
        {
            var cache   = new InMemoryRepositoryModelCache();
            var network = _networkRepository.Get(_user, id, cache);

            if (network == null)
            {
                return(RpcNetworkRepositoryHelpers.CreateNotFoundError <string[]>());
            }

            var computerRepository = _repositoryFactory.GetComputerRepository();
            var computer           = computerRepository.Get(_user, computerId, cache);

            if (computer == null)
            {
                return(RpcComputerRepositoryHelpers.CreateNotFoundError <string[]>());
            }

            return(SyncWholeNetwork(network, computer, devicesXml));
        }
Beispiel #4
0
        public Response Delete(int id)
        {
            var cache   = new InMemoryRepositoryModelCache();
            var network = _networkRepository.Get(_user, id, cache);

            if (network == null)
            {
                return(RpcNetworkRepositoryHelpers.CreateNotFoundError());
            }

            var deviceRepository = _repositoryFactory.GetDeviceRepository();

            foreach (var device in deviceRepository.Get(network, cache))
            {
                deviceRepository.Remove(device);
            }

            _networkRepository.Remove(network);

            return(Response.Empty());
        }