예제 #1
0
 public UncompressedPackage(IPackageRepository source, FileInfo originalPackage, string wrapCacheDirectory, IEnumerable<IExportBuilder> exporters)
 {
     _originalWrapFile = originalPackage;
     _exporters = exporters;
     BaseDirectory = new DirectoryInfo(wrapCacheDirectory);
     // get the descriptor file inside the package
     var descriptorName = BaseDirectory.Name;
     Descriptor = new WrapDescriptorParser().ParseFile(Path.Combine(wrapCacheDirectory, descriptorName + ".wrapdesc"));
 }
        void NotifyClient(IFile wrapPath, IWrapAssemblyClient client)
        {
            if (!_notificationClients.ContainsKey(wrapPath.Path))
                return;
            var d = _notificationClients[wrapPath.Path];

            var parsedDescriptor = new WrapDescriptorParser().ParseFile(wrapPath);

            client.WrapAssembliesUpdated(_resolver.GetAssemblyReferences(parsedDescriptor, d.Repository, client));
        }
예제 #3
0
        void NotifyAllClients(string wrapPath)
        {
            if (!_notificationClients.ContainsKey(wrapPath))
                return;
            var d = _notificationClients[wrapPath];

            var parsedDescriptor = new WrapDescriptorParser().ParseFile(wrapPath);

            foreach (var client in d.Clients)
            {
                client.WrapAssembliesUpdated(_resolver.GetAssemblyReferences(parsedDescriptor, d.Repository, client));
            }
        }
예제 #4
0
 public UncompressedPackage(IPackageRepository source,
     IFile originalPackage,
     IDirectory wrapCacheDirectory,
     IEnumerable<IExportBuilder> exporters,
     bool allowAnchoring)
 {
     _originalWrapFile = originalPackage;
     _exporters = exporters;
     BaseDirectory = wrapCacheDirectory;
     // get the descriptor file inside the package
     var descriptorName = BaseDirectory.Name;
     Source = source;
     Descriptor = new WrapDescriptorParser().ParseFile(wrapCacheDirectory.GetFile(descriptorName + ".wrapdesc"));
     if (allowAnchoring)
         VerifyAnchoring();
 }