Ejemplo n.º 1
0
        public void GetPackageVersions(
            string repositoryName,
            string packageNames)
        {
            XmlMessageListPackages listPackagesMessage = XmlMessageCreator.CreateXmlMessageListPackages();

            List <string> packages = packageNames.Split(',').ToList <string>();

            listPackagesMessage.AddRepositoryPackages(repositoryName, packages);


            // create packet
            PacketMessage packetMessage =
                new PacketMessage(PacketMessageType.C_LIST_PACKAGE_VERSIONS, 0, listPackagesMessage.ToByteArray());

            byte[] packet = _packetManager.CreateMessage(packetMessage.GetMessageData());

            // send
            _clientSocket.Send(packet);

            // get response
            int rec = _clientSocket.Receive(_socketBuffer);

            byte[] data = new byte[rec];
            Array.Copy(_socketBuffer, data, rec);
            _packetManager.AddReceivedData(data);
        }
Ejemplo n.º 2
0
        private void ListPackages(
            ClientConnection clientConnection,
            ClientRequest clientRequest)
        {
            XmlMessageListPackages listPackagesMessage = XmlMessageCreator.CreateXmlMessageListPackages();

            foreach (Repository repository in _repositoryManager.Repositories.Values)
            {
                List <string> packages = new List <string>();
                foreach (string package in repository.GetPackages())
                {
                    packages.Add(package);
                }

                listPackagesMessage.AddRepositoryPackages(repository.Name, packages);
            }

            SendClientXmlResponse(clientConnection, clientRequest, PacketMessageType.S_PACKAGES, listPackagesMessage);
        }