public static ChangeField WithFields(bool id                   = false,
                                      bool version              = false,
                                      bool username             = false,
                                      bool href                 = false,
                                      bool weburl               = false,
                                      bool weblink              = false,
                                      bool date                 = false,
                                      bool comment              = false,
                                      bool personal             = false,
                                      UserField userField       = null,
                                      FilesField filesField     = null,
                                      VcsRootField vcsRootField = null,
                                      VcsRootInstanceField vcsRootInstanceField             = null,
                                      ChangeVcsRootInstanceField changeVcsRootInstanceField = null)
 {
     return(new ChangeField
     {
         Id = id,
         Version = version,
         Username = username,
         Href = href,
         WebUrl = weburl,
         WebLink = weblink,
         Date = date,
         Comment = comment,
         Personal = personal,
         UserField = userField,
         FilesField = filesField,
         VcsRootField = vcsRootField,
         VcsRootInstanceField = vcsRootInstanceField,
         ChangeVcsRootInstanceField = changeVcsRootInstanceField
     });
 }
 public static TriggeredField WithFields(
     // Fields
     bool type        = false,
     bool date        = false,
     bool details     = false,
     bool displayText = false,
     bool rawValue    = false,
     // Group Fields
     BuildTypeField buildType   = null,
     UserField user             = null,
     BuildField build           = null,
     PropertiesField properties = null)
 {
     return(new TriggeredField
     {
         // Fields
         Type = type,
         Details = details,
         Date = date,
         DisplayText = displayText,
         RawValue = rawValue,
         // Group fields
         User = user,
         Build = build,
         BuildType = buildType,
         Properties = properties
     });
 }
 public static ProgressInfoField WithFields(
     bool percentageComplete    = true,
     bool elapsedSeconds        = false,
     bool estimatedTotalSeconds = false,
     bool leftSeconds           = false,
     bool currentStageText      = false,
     bool outdated         = false,
     bool probablyHanging  = false,
     bool lastActivityTime = false,
     UserField user        = null)
 {
     return(new ProgressInfoField
     {
         PercentageComplete = percentageComplete,
         ElapsedSeconds = elapsedSeconds,
         EstimatedTotalSeconds = estimatedTotalSeconds,
         LeftSeconds = leftSeconds,
         CurrentStageText = currentStageText,
         Outdated = outdated,
         ProbablyHanging = probablyHanging,
         LastActivityTime = lastActivityTime,
         User = user,
     });
 }
 public static CommentField WithFields(bool timestamp = false, bool text = false, UserField user = null)
 {
     return(new CommentField
     {
         Timestamp = timestamp,
         Text = text,
         User = user,
     });
 }
        public static BuildField WithFields(
            // Fields
            bool id                  = false,
            bool taskId              = false,
            bool buildTypeId         = false,
            bool buildTypeInternalId = false,
            bool number              = false,
            bool status              = false,
            bool state               = false,
            bool running             = false,
            bool composite           = false,
            bool failedToStart       = false,
            bool personal            = false,
            bool percentageComplete  = false,
            bool branchName          = false,
            bool defaultBranch       = false,
            bool unspecifiedBranch   = false,
            bool history             = false,
            bool pinned              = false,
            bool href                = false,
            bool webUrl              = false,
            bool queuePosition       = false,
            bool limitedChangesCount = false,
            bool artifactsDirectory  = false,
            bool statusText          = false,
            bool startEstimate       = false,
            bool waitReason          = false,
            bool startDate           = false,
            bool finishDate          = false,
            bool queuedDate          = false,
            bool settingsHash        = false,
            bool currentSettingsHash = false,
            bool modificationId      = false,
            bool chainModificationId = false,
            bool usedByOtherBuilds   = false,
            // Group fields
            LinksField links                                     = null,
            BuildTypeField buildType                             = null,
            CommentField comment                                 = null,
            TagsField tags                                       = null,
            CommentField pinInfo                                 = null,
            UserField user                                       = null,
            ProgressInfoField running_info                       = null,
            CommentField canceledInfo                            = null,
            TriggeredField triggered                             = null,
            LastChangesField lastChanges                         = null,
            ChangesField changes                                 = null,
            RevisionsField revisions                             = null,
            RevisionField versionedSettingsRevision              = null,
            BuildChangesField artifactDependencyChanges          = null,
            AgentField agent                                     = null,
            CompatibleAgentsField compatibleAgents               = null,
            TestOccurrencesField testOccurrences                 = null,
            ProblemOccurrencesField problemOccurrences           = null,
            ArtifactsField artifacts                             = null,
            PropertiesField properties                           = null,
            PropertiesField resultingProperties                  = null,
            EntriesField attributes                              = null,
            StatisticsField statistics                           = null,
            DatasField metadata                                  = null,
            BuildSnapshotDependenciesField snapshotDependencies  = null,
            BuildArtifactDependenciesField artifactDependencies  = null,
            ArtifactDependenciesField customArtifactDependencies = null,
            ItemsField replacementIds                            = null,
            RelatedField related                                 = null,
            CommentField statusChangeComment                     = null,
            RelatedIssuesField relatedIssues                     = null

            )
        {
            return(new BuildField
            {
                // Fields
                Id = id,
                TaskId = taskId,
                BuildTypeId = buildTypeId,
                BuildTypeInternalId = buildTypeInternalId,
                Number = number,
                Status = status,
                State = state,
                Running = running,
                Composite = composite,
                FailedToStart = failedToStart,
                Personal = personal,
                PercentageComplete = percentageComplete,
                BranchName = branchName,
                DefaultBranch = defaultBranch,
                UnspecifiedBranch = unspecifiedBranch,
                History = history,
                Pinned = pinned,
                Href = href,
                WebUrl = webUrl,
                QueuePosition = queuePosition,
                LimitedChangesCount = limitedChangesCount,
                ArtifactsDirectory = artifactsDirectory,
                StatusText = statusText,
                StartEstimate = startEstimate,
                WaitReason = waitReason,
                StartDate = startDate,
                FinishDate = finishDate,
                QueuedDate = queuedDate,
                SettingsHash = settingsHash,
                CurrentSettingsHash = currentSettingsHash,
                ModificationId = modificationId,
                ChainModificationId = chainModificationId,
                UsedByOtherBuilds = usedByOtherBuilds,
                // GroupFields
                Links = links,
                BuildType = buildType,
                Comment = comment,
                Tags = tags,
                PinInfo = pinInfo,
                User = user,
                Running_info = running_info,
                CanceledInfo = canceledInfo,
                Triggered = triggered,
                LastChanges = lastChanges,
                Changes = changes,
                Revisions = revisions,
                VersionedSettingsRevision = versionedSettingsRevision,
                ArtifactDependencyChanges = artifactDependencyChanges,
                Agent = agent,
                CompatibleAgents = compatibleAgents,
                TestOccurrences = testOccurrences,
                ProblemOccurrences = problemOccurrences,
                Artifacts = artifacts,
                Properties = properties,
                ResultingProperties = resultingProperties,
                Attributes = attributes,
                Statistics = statistics,
                Metadata = metadata,
                SnapshotDependencies = snapshotDependencies,
                ArtifactDependencies = artifactDependencies,
                CustomArtifactDependencies = customArtifactDependencies,
                ReplacementIds = replacementIds,
                Related = related,
                StatusChangeComment = statusChangeComment,
                RelatedIssues = relatedIssues
            });
        }