private void fillBuildFields()

in tcbot-teamcity-ignited/src/main/java/org/apache/ignite/ci/teamcity/ignited/fatbuild/FatBuildCompacted.java [275:363]


    private void fillBuildFields(IStringCompactor compactor, Build res) {
        if (startDate > 0)
            res.setStartDateTs(startDate);

        if (finishDate > 0)
            res.setFinishDateTs(finishDate);

        if (queuedDate > 0)
            res.setQueuedDateTs(queuedDate);

        BuildType type = new BuildType();
        type.setId(res.buildTypeId());
        type.setName(buildTypeName(compactor));
        type.setProjectId(projectId(compactor));
        res.setBuildType(type);

        if (testsV2 != null) {
            TestOccurrencesRef testOccurrencesRef = new TestOccurrencesRef();
            testOccurrencesRef.href = "/app/rest/latest/testOccurrences?locator=build:(id:" + id() + ")";
            testOccurrencesRef.count = testsV2.size();
            res.testOccurrences = testOccurrencesRef;
        }

        if (snapshotDeps != null) {
            List<BuildRef> snapshotDependencies = new ArrayList<>();

            for (int depId : snapshotDeps) {
                BuildRef ref = new BuildRef();
                ref.setId(depId);
                ref.href = getHrefForId(depId);
                snapshotDependencies.add(ref);
            }

            res.snapshotDependencies(snapshotDependencies);
        }

        res.defaultBranch = getFlag(DEF_BR_F);
        res.composite = getFlag(COMPOSITE_F);

        if (triggered != null) {
            final Triggered trigXml = new Triggered();

            trigXml.setType(compactor.getStringFromId(triggered.type));
            trigXml.setDate(res.queuedDate);

            if (triggered.userId > 0) {
                final User trigUser = new User();
                trigUser.id = Integer.toString(triggered.userId);
                trigUser.username = compactor.getStringFromId(triggered.userUsername);
                trigXml.setUser(trigUser);
            }


            if (triggered.buildId > 0) {
                final BuildRef trigBuild = new BuildRef();
                trigBuild.setId(triggered.buildId);
                trigXml.setBuild(trigBuild);
            }

            res.setTriggered(trigXml);
        }

        if (revisions != null) {
            res.setRevisions(Arrays.stream(revisions).map(revComp -> {
                Revision revision = new Revision()
                    .version(revComp.commitFullVersion())
                    .vcsBranchName(revComp.vcsBranchName(compactor));

                String vcsRootId = revComp.vcsRootId(compactor);
                Integer vcsRootInstanceId = revComp.vcsRootInstanceId();

                if (vcsRootId == null && vcsRootInstanceId == null)
                    return revision;

                return revision.vcsRootInstance(
                    new VcsRootInstance()
                        .id(vcsRootInstanceId)
                        .vcsRootId(vcsRootId));
            }).collect(Collectors.toList()));
        }

        if (buildParameters != null) {
            List<Property> props = new ArrayList<>();

            buildParameters.forEach(compactor, (k, v) -> props.add(new Property(k, v)));

            res.parameters(new Parameters(props));
        }
    }