private Requirement requirementFromDirectoryName(File requirementDirectory) { String shortName = humanReadableVersionOf(requirementDirectory.getName()); List<Requirement> children = readChildrenFrom(requirementDirectory); return Requirement.named(shortName) .withType(getDefaultType(level)) .withNarrative("") .withPath(relativeDirectoryOf(requirementDirectory.getPath())) .withChildren(children); }
private Requirement storyNamed(String storyName, String path) { String shortName = humanReadableVersionOf(storyName); return Requirement.named(shortName) .withType(STORY_EXTENSION) .withNarrative(shortName) .withPath(relativeDirectoryOf(path)); }
private Requirement requirementWithNarrative(File requirementDirectory, String shortName, Narrative requirementNarrative) { String displayName = getTitleFromNarrativeOrDirectoryName(requirementNarrative, shortName); String cardNumber = requirementNarrative.getCardNumber().orElse(null); String type = requirementNarrative.getType(); List<String> releaseVersions = requirementNarrative.getVersionNumbers(); List<Requirement> children = readChildrenFrom(requirementDirectory); return Requirement.named(shortName) .withOptionalDisplayName(displayName) .withOptionalCardNumber(cardNumber) .withType(type) .withNarrative(requirementNarrative.getText()) .withReleaseVersions(releaseVersions) .withPath(relativeDirectoryOf(requirementDirectory.getPath())) .withChildren(children); }
private Requirement leafRequirementWithNarrative(String shortName, String path, Narrative requirementNarrative) { String displayName = getTitleFromNarrativeOrDirectoryName(requirementNarrative, shortName); String cardNumber = requirementNarrative.getCardNumber().orElse(null); String type = requirementNarrative.getType(); List<String> releaseVersions = requirementNarrative.getVersionNumbers(); return Requirement.named(shortName) .withId(requirementNarrative.getId().orElse(path)) .withOptionalDisplayName(displayName) .withOptionalCardNumber(cardNumber) .withType(type) .withNarrative(requirementNarrative.getText()) .withPath(relativeDirectoryOf(path)) .withReleaseVersions(releaseVersions) .withTags(requirementNarrative.getTags()); }