Ejemplo n.º 1
0
 internal ManualTargetDescription([NotNull] ModuleName moduleName, [NotNull] ISource source, [CanBeNull] string fileName, [NotNull] IEnumerable<ModuleName> dependencies, [CanBeNull] IEnumerable<Message> buildMessages = null)
 {
     if (moduleName == null)
         throw new ArgumentNullException("moduleName");
     if (source == null)
         throw new ArgumentNullException("source");
     if (dependencies == null)
         throw new ArgumentNullException("dependencies");
     _moduleName = moduleName;
     _source = source;
     _fileName = fileName;
     _dependencies = new DependencySet(moduleName);
     _dependencies.AddRange(dependencies);
     if (buildMessages != null)
         _buildMessages = new List<Message>(buildMessages);
 }
Ejemplo n.º 2
0
        public ProvidedTarget(Module module,
            IEnumerable<ModuleName> dependencies = null,
            IEnumerable<KeyValuePair<string, Symbol>> symbols = null,
            IEnumerable<IResourceDescriptor> resources = null,
            IEnumerable<Message> messages = null,
            IEnumerable<Message> buildMessages = null,
            Exception exception = null)
        {
            _module = module;
            _dependencies = new DependencySet(module.Name);
            if (dependencies != null)
                _dependencies.AddRange(dependencies);
            _symbols = SymbolStore.Create();
            if (symbols != null)
                foreach (var entry in symbols)
                    _symbols.Declare(entry.Key, entry.Value);
            _resources = new List<IResourceDescriptor>();
            if (resources != null)
                _resources.AddRange(resources);

            _exception = exception;

            if (messages != null)
                _messages = new List<Message>(messages);

            if (buildMessages != null)
            {
                _buildMessages = new List<Message>(buildMessages);

                if (_messages == null)
                    _messages = new List<Message>(_buildMessages);
                else
                    _messages.AddRange(_buildMessages);
                
            }

            _isSuccessful = exception == null &&
                            (_messages == null || _messages.All(m => m.Severity != MessageSeverity.Error));
        }