コード例 #1
0
        protected override void Execute(NativeActivityContext context)
        {
            var pModel = new PackageModel();

            pModel.Id          = PackageId.Get(context);
            pModel.Description = Description.Get(context);
            pModel.Version     = Models.PackageModel.CreateFullVersionFromMajorMinor(MajorVersion.Get(context), MinorVersion.Get(context));
            pModel.Authors     = Authors.Get(context);
            pModel.Owners      = Owners.Get(context);
            pModel.LicenseUrl  = LicenseUrl.Get(context);
            pModel.ProjectUrl  = ProjectUrl.Get(context);
            pModel.IconUrl     = IconUrl.Get(context);
            pModel.RequireLicenseAcceptance = RequireLicenseAcceptance.Get(context);
            pModel.ReleaseNotes             = ReleaseNotes.Get(context);
            pModel.Copyright              = Copyright.Get(context);
            pModel.Tags                   = Tags.Get(context);
            pModel.DirectorySet           = DirectorySet.Get(context);
            pModel.ModelsAssemblyGuid     = ModelsAssemblyGuid.Get(context) ?? Guid.NewGuid().ToString();
            pModel.ActivitiesAssemblyGuid = ActivitiesAssemblyGuid.Get(context) ?? Guid.NewGuid().ToString();

            this.PackageModel.Set(context, pModel);

            context.Properties.Add("PackageModel", pModel);

            context.ScheduleActivity(this.Body);
        }
        protected override PackageModel Execute(CodeActivityContext context)
        {
            var pModel = new PackageModel();

            pModel.Id          = PackageId.Get(context);
            pModel.Description = Description.Get(context);
            pModel.Version     = Version.Get(context);
            pModel.Authors     = Authors.Get(context);
            pModel.Owners      = Owners.Get(context);
            pModel.LicenseUrl  = LicenseUrl.Get(context);
            pModel.ProjectUrl  = ProjectUrl.Get(context);
            pModel.IconUrl     = IconUrl.Get(context);
            pModel.RequireLicenseAcceptance = RequireLicenseAcceptance.Get(context);
            pModel.ReleaseNotes             = ReleaseNotes.Get(context);
            pModel.Copyright              = Copyright.Get(context);
            pModel.Tags                   = Tags.Get(context);
            pModel.DirectorySet           = DirectorySet.Get(context);
            pModel.ModelsAssemblyGuid     = ModelsAssemblyGuid.Get(context);
            pModel.ActivitiesAssemblyGuid = ActivitiesAssemblyGuid.Get(context);

            return(pModel);
        }
コード例 #3
0
        internal void WriteNuspec(Stream stream)
        {
            using XmlWriter writer = XmlWriter.Create(
                      stream,
                      new XmlWriterSettings
            {
                Indent             = true,
                OmitXmlDeclaration = true,
            });

            writer.WriteStartElement("package", "http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd");
            writer.WriteStartElement("metadata");
            writer.WriteAttributeString("minClientVersion", "2.12");
            writer.WriteElementString("id", Id);
            writer.WriteElementString("version", Version);
            writer.WriteElementStringIfNotNull("title", Title);
            writer.WriteElementStringIfNotNull("authors", Author);
            writer.WriteElementStringIfNotNull("description", Description);
            writer.WriteElementStringIfNotNull("copyright", Copyright);
            writer.WriteElementStringIfNotNull("tags", Tags);
            writer.WriteElementStringIfNotNull("projectUrl", ProjectUrl);
            writer.WriteElementStringIfNotNull("requireLicenseAcceptance", RequireLicenseAcceptance.ToString());
            writer.WriteElementStringIfNotNull("licenseUrl", LicenseUrl);
            writer.WriteElementStringIfNotNull("icon", Icon);
            writer.WriteElementStringIfNotNull("iconUrl", IconUrl);
            writer.WriteElementStringIfNotNull("developmentDependency", DevelopmentDependency.ToString());
            writer.WriteElementStringIfNotNull("language", Language);
            writer.WriteElementStringIfNotNull("title", Title);
            writer.WriteElementStringIfNotNull("tags", Tags);
            writer.WriteElementStringIfNotNull("summary", Summary);
            writer.WriteElementStringIfNotNull("owners", Owners);
            writer.WriteElementStringIfNotNull("releaseNotes", ReleaseNotes);
            writer.WriteElementStringIfNotNull("serviceable", Serviceable.ToString());

            if (PackageTypes != null && PackageTypes.Any())
            {
                writer.WriteStartElement("packageTypes");

                foreach (string?packageType in PackageTypes)
                {
                    writer.WriteStartElement("packageType");
                    writer.WriteAttributeString("name", packageType);
                    writer.WriteEndElement(); // </packageType>
                }

                writer.WriteEndElement(); // </packageTypes>
            }

            if (LicenseExpression != null)
            {
                writer.WriteStartElement("license");
                writer.WriteAttributeString("type", "expression");
                writer.WriteAttributeStringIfNotNull("version", LicenseVersion);
                writer.WriteString(LicenseExpression);
                writer.WriteEndElement(); // </license>
            }

            if (RepositoryType != null)
            {
                writer.WriteStartElement("repository");
                writer.WriteAttributeString("type", RepositoryType);
                writer.WriteAttributeStringIfNotNull("url", RepositoryUrl);
                writer.WriteAttributeStringIfNotNull("commit", RepositoryCommit);
                writer.WriteAttributeStringIfNotNull("branch", RepositoryBranch);
                writer.WriteEndElement(); // </repository>
            }

            if (_targetFrameworks.Any())
            {
                writer.WriteStartElement("dependencies");

                foreach (string?targetFramework in _targetFrameworks)
                {
                    writer.WriteStartElement("group");
                    writer.WriteAttributeString("targetFramework", targetFramework);

                    if (_dependencies.TryGetValue(targetFramework, out HashSet <PackageDependency>?dependencies))
                    {
                        foreach (PackageDependency dependency in dependencies)
                        {
                            writer.WriteStartElement("dependency");
                            writer.WriteAttributeString("id", dependency.Id);
                            writer.WriteAttributeString("version", dependency.Version);
                            writer.WriteAttributeString("exclude", dependency.ExcludeAssets);
                            writer.WriteEndElement();
                        }
                    }

                    writer.WriteEndElement();
                }

                writer.WriteEndElement(); // </dependencies>
            }

            if (_contentFiles.Any())
            {
                writer.WriteStartElement("contentFiles");

                foreach (PackageContentFileEntry?contentFilesEntry in _contentFiles)
                {
                    writer.WriteStartElement("files");
                    writer.WriteAttributeStringIfNotNull("include", contentFilesEntry.Include);
                    writer.WriteAttributeStringIfNotNull("exclude", contentFilesEntry.Exclude);
                    writer.WriteAttributeString("copyToOutput", contentFilesEntry.CopyToOutput.ToString());
                    writer.WriteAttributeStringIfNotNull("flatten", contentFilesEntry.Flatten.ToString());
                    writer.WriteAttributeStringIfNotNull("buildAction", contentFilesEntry.BuildAction);
                    writer.WriteEndElement();
                }

                writer.WriteEndElement(); // </contentFiles>
            }

            writer.WriteEndElement(); // </metadata>
            writer.WriteEndElement(); // </package>

            writer.Flush();
        }