├── .dockerignore
├── .gitattributes
├── .github
└── workflows
│ └── ci.yml
├── .gitignore
├── .jcheck
└── conf
├── CONTRIBUTING.md
├── LICENSE
├── Makefile
├── README.md
├── Unzip.java
├── args
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── args
│ │ ├── Argument.java
│ │ ├── ArgumentParser.java
│ │ ├── Arguments.java
│ │ ├── Command.java
│ │ ├── CommandCtor.java
│ │ ├── CommandHelpText.java
│ │ ├── CommandMain.java
│ │ ├── Default.java
│ │ ├── Executable.java
│ │ ├── Flag.java
│ │ ├── FlagValue.java
│ │ ├── Input.java
│ │ ├── InputDescriber.java
│ │ ├── InputQualifier.java
│ │ ├── InputQuantifier.java
│ │ ├── Main.java
│ │ ├── MultiCommandParser.java
│ │ ├── Option.java
│ │ ├── OptionDescribe.java
│ │ ├── OptionFullname.java
│ │ ├── OptionHelptext.java
│ │ ├── OptionQualifier.java
│ │ ├── Switch.java
│ │ ├── SwitchFullname.java
│ │ ├── SwitchHelptext.java
│ │ └── SwitchQualifier.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── args
│ ├── InputTests.java
│ └── SwitchTests.java
├── bot
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bot
│ │ ├── Bot.java
│ │ ├── BotConfiguration.java
│ │ ├── BotFactory.java
│ │ ├── BotRunner.java
│ │ ├── BotRunnerConfiguration.java
│ │ ├── BotTaskAggregationHandler.java
│ │ ├── BotWatchdog.java
│ │ ├── ConfigurationError.java
│ │ ├── LivenessHandler.java
│ │ ├── LogContext.java
│ │ ├── LogContextMap.java
│ │ ├── MetricsHandler.java
│ │ ├── ProfileHandler.java
│ │ ├── ReadinessHandler.java
│ │ ├── VersionHandler.java
│ │ ├── WebhookHandler.java
│ │ └── WorkItem.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── bot
│ ├── BotRunnerConfigurationTests.java
│ ├── BotRunnerTests.java
│ ├── BotTaskAggregationHandlerTests.java
│ └── LogContextTests.java
├── bots.dockerfile
├── bots
├── bridgekeeper
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── bridgekeeper
│ │ │ ├── BridgekeeperBotFactory.java
│ │ │ ├── PullRequestCloserBot.java
│ │ │ └── PullRequestPrunerBot.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── bridgekeeper
│ │ ├── BridgekeeperBotFactoryTest.java
│ │ ├── PullRequestCloserBotTests.java
│ │ └── PullRequestPrunerBotTests.java
├── censussync
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── censussync
│ │ │ ├── CensusSyncBotFactory.java
│ │ │ ├── CensusSyncSplitBot.java
│ │ │ └── CensusSyncUnifyBot.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── censussync
│ │ └── CensusSyncBotFactoryTest.java
├── checkout
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── checkout
│ │ │ ├── CheckoutBot.java
│ │ │ ├── CheckoutBotFactory.java
│ │ │ └── MarkStorage.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── checkout
│ │ ├── CheckoutBotFactoryTest.java
│ │ └── CheckoutBotTests.java
├── cli
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── cli
│ │ │ ├── BotConsoleHandler.java
│ │ │ ├── BotLauncher.java
│ │ │ ├── BotLogstashHandler.java
│ │ │ └── BotSlackHandler.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── cli
│ │ ├── BotLogstashHandlerTests.java
│ │ ├── BotSlackHandlerTests.java
│ │ ├── LoggingBot.java
│ │ └── RestReceiver.java
├── common
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── common
│ │ ├── BotUtils.java
│ │ ├── CommandNameEnum.java
│ │ ├── PatternEnum.java
│ │ ├── PullRequestConstants.java
│ │ └── SolvesTracker.java
├── forward
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── forward
│ │ │ ├── ForwardBot.java
│ │ │ └── ForwardBotFactory.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── forward
│ │ ├── ForwardBotFactoryTest.java
│ │ └── ForwardBotTests.java
├── hgbridge
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── hgbridge
│ │ │ ├── Exporter.java
│ │ │ ├── ExporterConfig.java
│ │ │ ├── JBridgeBot.java
│ │ │ └── JBridgeBotFactory.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── hgbridge
│ │ ├── BridgeBotTests.java
│ │ └── JBridgeBotFactoryTest.java
├── merge
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── merge
│ │ │ ├── Clock.java
│ │ │ ├── MergeBot.java
│ │ │ └── MergeBotFactory.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── merge
│ │ ├── MergeBotFactoryTest.java
│ │ └── MergeBotTests.java
├── mirror
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── mirror
│ │ │ ├── MirrorBot.java
│ │ │ └── MirrorBotFactory.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── mirror
│ │ ├── MirrorBotFactoryTest.java
│ │ └── MirrorBotTests.java
├── mlbridge
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── mlbridge
│ │ │ ├── ArchiveItem.java
│ │ │ ├── ArchiveMessages.java
│ │ │ ├── ArchiveReaderWorkItem.java
│ │ │ ├── ArchiveWorkItem.java
│ │ │ ├── BridgedComment.java
│ │ │ ├── CensusInstance.java
│ │ │ ├── CommentPosterWorkItem.java
│ │ │ ├── CooldownQuarantine.java
│ │ │ ├── EmojiTable.java
│ │ │ ├── HostUserToEmailAuthor.java
│ │ │ ├── HostUserToRole.java
│ │ │ ├── HostUserToUsername.java
│ │ │ ├── LabelsUpdaterWorkItem.java
│ │ │ ├── MailingListArchiveReaderBot.java
│ │ │ ├── MailingListBridgeBot.java
│ │ │ ├── MailingListBridgeBotBuilder.java
│ │ │ ├── MailingListBridgeBotFactory.java
│ │ │ ├── MailingListConfiguration.java
│ │ │ ├── MarkdownToText.java
│ │ │ ├── QuoteFilter.java
│ │ │ ├── ReviewArchive.java
│ │ │ ├── TextToMarkdown.java
│ │ │ ├── WebrevDescription.java
│ │ │ ├── WebrevNotification.java
│ │ │ └── WebrevStorage.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── mlbridge
│ │ ├── ArchiveItemTests.java
│ │ ├── BridgedCommentTests.java
│ │ ├── LabelsUpdaterTests.java
│ │ ├── MailingListArchiveReaderBotTests.java
│ │ ├── MailingListBridgeBotFactoryTest.java
│ │ ├── MailingListBridgeBotTests.java
│ │ ├── MarkdownToTextTests.java
│ │ ├── QuoteFilterTests.java
│ │ ├── TextToMarkdownTests.java
│ │ └── WebrevStorageTests.java
├── notify
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── notify
│ │ │ ├── CommitFormatters.java
│ │ │ ├── Emitter.java
│ │ │ ├── NonRetriableException.java
│ │ │ ├── Notifier.java
│ │ │ ├── NotifierFactory.java
│ │ │ ├── NotifyBot.java
│ │ │ ├── NotifyBotBuilder.java
│ │ │ ├── NotifyBotFactory.java
│ │ │ ├── PullRequestListener.java
│ │ │ ├── PullRequestState.java
│ │ │ ├── PullRequestWorkItem.java
│ │ │ ├── RepositoryListener.java
│ │ │ ├── RepositoryWorkItem.java
│ │ │ ├── UpdateHistory.java
│ │ │ ├── UpdatedBranch.java
│ │ │ ├── UpdatedTag.java
│ │ │ ├── comment
│ │ │ ├── CommitCommentNotifier.java
│ │ │ └── CommitCommentNotifierFactory.java
│ │ │ ├── issue
│ │ │ ├── CensusInstance.java
│ │ │ ├── IssueNotifier.java
│ │ │ ├── IssueNotifierBuilder.java
│ │ │ └── IssueNotifierFactory.java
│ │ │ ├── json
│ │ │ ├── JsonNotifier.java
│ │ │ ├── JsonNotifierFactory.java
│ │ │ └── JsonWriter.java
│ │ │ ├── mailinglist
│ │ │ ├── MailingListNotifier.java
│ │ │ ├── MailingListNotifierBuilder.java
│ │ │ └── MailingListNotifierFactory.java
│ │ │ ├── notes
│ │ │ ├── CommitNoteNotifier.java
│ │ │ └── CommitNoteNotifierFactory.java
│ │ │ ├── prbranch
│ │ │ ├── PullRequestBranchNotifier.java
│ │ │ └── PullRequestBranchNotifierFactory.java
│ │ │ └── slack
│ │ │ ├── SlackNotifier.java
│ │ │ └── SlackNotifierFactory.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── notify
│ │ ├── NotifyBotFactoryTest.java
│ │ ├── RepositoryWorkItemTests.java
│ │ ├── TestUtils.java
│ │ ├── UpdateHistoryTests.java
│ │ ├── UpdaterTests.java
│ │ ├── comment
│ │ └── CommitCommentNotifierTests.java
│ │ ├── issue
│ │ └── IssueNotifierTests.java
│ │ ├── json
│ │ └── JsonNotifierTests.java
│ │ ├── mailinglist
│ │ └── MailingListNotifierTests.java
│ │ ├── notes
│ │ └── CommitNoteNotiferTests.java
│ │ └── prbranch
│ │ └── PullRequestBranchNotifierTests.java
├── pr
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── pr
│ │ │ ├── AdditionalConfiguration.java
│ │ │ ├── Approval.java
│ │ │ ├── ApprovalCommand.java
│ │ │ ├── ApproveCommand.java
│ │ │ ├── AuthorCommand.java
│ │ │ ├── BackportCommand.java
│ │ │ ├── BranchCommand.java
│ │ │ ├── CSRCommand.java
│ │ │ ├── CSRIssueBot.java
│ │ │ ├── CSRIssueWorkItem.java
│ │ │ ├── CensusInstance.java
│ │ │ ├── CheckRun.java
│ │ │ ├── CheckWorkItem.java
│ │ │ ├── CheckablePullRequest.java
│ │ │ ├── CleanCommand.java
│ │ │ ├── CommandExtractor.java
│ │ │ ├── CommandHandler.java
│ │ │ ├── CommandInvocation.java
│ │ │ ├── CommitCommandWorkItem.java
│ │ │ ├── CommitCommentsWorkItem.java
│ │ │ ├── ContributorCommand.java
│ │ │ ├── Contributors.java
│ │ │ ├── IntegrateCommand.java
│ │ │ ├── IntegrationLock.java
│ │ │ ├── IssueBot.java
│ │ │ ├── IssueCommand.java
│ │ │ ├── JEPCommand.java
│ │ │ ├── LabelCommand.java
│ │ │ ├── LabelTracker.java
│ │ │ ├── LabelerWorkItem.java
│ │ │ ├── LimitedCensusInstance.java
│ │ │ ├── MergePullRequestReviewConfiguration.java
│ │ │ ├── OpenCommand.java
│ │ │ ├── OverridingAuthor.java
│ │ │ ├── PRRecord.java
│ │ │ ├── PullRequestBot.java
│ │ │ ├── PullRequestBotBuilder.java
│ │ │ ├── PullRequestBotFactory.java
│ │ │ ├── PullRequestCheckIssueVisitor.java
│ │ │ ├── PullRequestCommandWorkItem.java
│ │ │ ├── PullRequestWorkItem.java
│ │ │ ├── ReadyForSponsorTracker.java
│ │ │ ├── ReviewCoverage.java
│ │ │ ├── ReviewerCommand.java
│ │ │ ├── Reviewers.java
│ │ │ ├── ReviewersCommand.java
│ │ │ ├── ReviewersTracker.java
│ │ │ ├── ScratchArea.java
│ │ │ ├── SponsorCommand.java
│ │ │ ├── Summary.java
│ │ │ ├── SummaryCommand.java
│ │ │ ├── TagCommand.java
│ │ │ └── TouchCommand.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── pr
│ │ ├── AdditionalConfigurationTests.java
│ │ ├── ApprovalAndApproveCommandTests.java
│ │ ├── ApprovalTests.java
│ │ ├── AuthorCommandTests.java
│ │ ├── BackportCommitCommandTests.java
│ │ ├── BackportPRCommandTests.java
│ │ ├── BackportTests.java
│ │ ├── BranchCommitCommandTests.java
│ │ ├── CSRBotTests.java
│ │ ├── CSRCommandTests.java
│ │ ├── CheckTests.java
│ │ ├── CleanCommandTests.java
│ │ ├── CommitCommandAsserts.java
│ │ ├── CommitCommandTests.java
│ │ ├── ContributorTests.java
│ │ ├── IntegrateTests.java
│ │ ├── IntegrationLockTests.java
│ │ ├── IssueBotTests.java
│ │ ├── IssueTests.java
│ │ ├── JEPCommandTests.java
│ │ ├── LabelTests.java
│ │ ├── LabelerTests.java
│ │ ├── MergeTests.java
│ │ ├── OpenCommandTests.java
│ │ ├── PreIntegrateTests.java
│ │ ├── PullRequestAsserts.java
│ │ ├── PullRequestBotFactoryTest.java
│ │ ├── PullRequestCommandTests.java
│ │ ├── ReviewerTests.java
│ │ ├── ReviewersTests.java
│ │ ├── SponsorTests.java
│ │ ├── SummaryTests.java
│ │ └── TagCommitCommandTests.java
├── submit
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── submit
│ │ │ ├── CheckUpdater.java
│ │ │ ├── ShellExecutor.java
│ │ │ ├── ShellExecutorFactory.java
│ │ │ ├── SubmitBot.java
│ │ │ ├── SubmitBotFactory.java
│ │ │ ├── SubmitBotWorkItem.java
│ │ │ ├── SubmitExecutor.java
│ │ │ └── SubmitExecutorFactory.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── submit
│ │ ├── CheckUpdaterTests.java
│ │ ├── ShellExecutorTests.java
│ │ ├── SubmitBotFactoryTest.java
│ │ └── SubmitBotTests.java
├── synclabel
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── synclabel
│ │ │ ├── SyncLabelBot.java
│ │ │ ├── SyncLabelBotFactory.java
│ │ │ ├── SyncLabelBotFindMainIssueWorkItem.java
│ │ │ └── SyncLabelBotUpdateLabelWorkItem.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── synclabel
│ │ ├── SyncLabelBotFactoryTest.java
│ │ └── SyncLabelBotTests.java
├── tester
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── tester
│ │ │ ├── Stage.java
│ │ │ ├── State.java
│ │ │ ├── TestBot.java
│ │ │ ├── TestBotFactory.java
│ │ │ ├── TestUpdateNeededWorkItem.java
│ │ │ └── TestWorkItem.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── tester
│ │ ├── InMemoryContinuousIntegration.java
│ │ ├── InMemoryHost.java
│ │ ├── InMemoryHostedRepository.java
│ │ ├── InMemoryJob.java
│ │ ├── InMemoryPullRequest.java
│ │ ├── StateTests.java
│ │ ├── TestBotFactoryTest.java
│ │ ├── TestBotTests.java
│ │ └── TestWorkItemTests.java
├── testinfo
│ ├── build.gradle
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ ├── module-info.java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── bots
│ │ │ └── testinfo
│ │ │ ├── TestInfoBot.java
│ │ │ ├── TestInfoBotFactory.java
│ │ │ ├── TestInfoBotWorkItem.java
│ │ │ └── TestResults.java
│ │ └── test
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── testinfo
│ │ ├── TestInfoBotFactoryTest.java
│ │ ├── TestInfoTests.java
│ │ └── TestResultsTests.java
└── topological
│ ├── build.gradle
│ └── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── bots
│ │ └── topological
│ │ ├── Edge.java
│ │ ├── TopologicalBot.java
│ │ ├── TopologicalBotFactory.java
│ │ └── TopologicalSort.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── bots
│ └── topological
│ ├── TopologicalBotFactoryTest.java
│ ├── TopologicalBotTests.java
│ └── TopologicalSortTest.java
├── build.gradle
├── census
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── census
│ │ ├── Census.java
│ │ ├── Contributor.java
│ │ ├── Contributors.java
│ │ ├── Group.java
│ │ ├── Member.java
│ │ ├── Namespace.java
│ │ ├── Parser.java
│ │ ├── Project.java
│ │ └── Version.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── census
│ ├── CensusTests.java
│ ├── GroupTests.java
│ ├── MemberTests.java
│ └── ProjectTests.java
├── ci
├── build.gradle
└── src
│ └── main
│ └── java
│ ├── module-info.java
│ └── org
│ └── openjdk
│ └── skara
│ └── ci
│ ├── Build.java
│ ├── ContinuousIntegration.java
│ ├── ContinuousIntegrationFactory.java
│ ├── Job.java
│ └── Test.java
├── cli
├── build.gradle
├── resources
│ └── man
│ │ └── man1
│ │ ├── git-jcheck.1
│ │ ├── git-verify-import.1
│ │ └── git-webrev.1
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── cli
│ │ ├── ForgeUtils.java
│ │ ├── GitBackport.java
│ │ ├── GitCommitComments.java
│ │ ├── GitCredentials.java
│ │ ├── GitDefpath.java
│ │ ├── GitFork.java
│ │ ├── GitHgExport.java
│ │ ├── GitInfo.java
│ │ ├── GitJCheck.java
│ │ ├── GitPr.java
│ │ ├── GitProxy.java
│ │ ├── GitPublish.java
│ │ ├── GitSkara.java
│ │ ├── GitSync.java
│ │ ├── GitToken.java
│ │ ├── GitTranslate.java
│ │ ├── GitTrees.java
│ │ ├── GitWebrev.java
│ │ ├── JCheckCLIVisitor.java
│ │ ├── Logging.java
│ │ ├── MinimalFormatter.java
│ │ ├── Remote.java
│ │ ├── SkaraDebug.java
│ │ ├── debug
│ │ ├── GitMlRules.java
│ │ ├── GitOpenJDKImport.java
│ │ ├── GitVerifyImport.java
│ │ ├── HgOpenJDKImport.java
│ │ ├── IssueRedecorate.java
│ │ └── SkaraDebugHelp.java
│ │ └── pr
│ │ ├── GitPrApply.java
│ │ ├── GitPrCC.java
│ │ ├── GitPrCSR.java
│ │ ├── GitPrCheckout.java
│ │ ├── GitPrClose.java
│ │ ├── GitPrContributor.java
│ │ ├── GitPrCreate.java
│ │ ├── GitPrFetch.java
│ │ ├── GitPrHelp.java
│ │ ├── GitPrInfo.java
│ │ ├── GitPrIntegrate.java
│ │ ├── GitPrIssue.java
│ │ ├── GitPrList.java
│ │ ├── GitPrReview.java
│ │ ├── GitPrReviewer.java
│ │ ├── GitPrSet.java
│ │ ├── GitPrShow.java
│ │ ├── GitPrSponsor.java
│ │ ├── GitPrSummary.java
│ │ ├── GitPrTest.java
│ │ └── Utils.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── cli
│ └── debug
│ └── TestGitMlRules.java
├── config
└── mailinglist
│ └── rules
│ └── jdk.json
├── deps.env
├── email
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── email
│ │ ├── Email.java
│ │ ├── EmailAddress.java
│ │ ├── EmailBuilder.java
│ │ ├── MimeText.java
│ │ ├── SMTP.java
│ │ └── SMTPSession.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── email
│ ├── EmailAddressTests.java
│ ├── EmailTests.java
│ ├── MimeTextTests.java
│ └── SMTPTests.java
├── encoding
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── encoding
│ │ └── Base85.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── encoding
│ └── Base85Tests.java
├── forge
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── forge
│ │ ├── Check.java
│ │ ├── CheckAnnotation.java
│ │ ├── CheckAnnotationBuilder.java
│ │ ├── CheckAnnotationLevel.java
│ │ ├── CheckBuilder.java
│ │ ├── CheckStatus.java
│ │ ├── Collaborator.java
│ │ ├── CommitComment.java
│ │ ├── CommitFailure.java
│ │ ├── Forge.java
│ │ ├── ForgeFactory.java
│ │ ├── HostedBranch.java
│ │ ├── HostedCommit.java
│ │ ├── HostedRepository.java
│ │ ├── HostedRepositoryPool.java
│ │ ├── LabelConfiguration.java
│ │ ├── LabelConfigurationHostedRepository.java
│ │ ├── LabelConfigurationJson.java
│ │ ├── MemberState.java
│ │ ├── PreIntegrations.java
│ │ ├── PullRequest.java
│ │ ├── PullRequestBody.java
│ │ ├── PullRequestPoller.java
│ │ ├── PullRequestUpdateCache.java
│ │ ├── PullRequestUtils.java
│ │ ├── ReferenceChange.java
│ │ ├── Review.java
│ │ ├── ReviewComment.java
│ │ ├── WebHook.java
│ │ ├── WorkflowStatus.java
│ │ ├── bitbucket
│ │ ├── BitbucketForgeFactory.java
│ │ ├── BitbucketHost.java
│ │ └── BitbucketRepository.java
│ │ ├── github
│ │ ├── GitHubApplication.java
│ │ ├── GitHubForgeFactory.java
│ │ ├── GitHubHost.java
│ │ ├── GitHubPullRequest.java
│ │ └── GitHubRepository.java
│ │ ├── gitlab
│ │ ├── GitLabForgeFactory.java
│ │ ├── GitLabHost.java
│ │ ├── GitLabMergeRequest.java
│ │ └── GitLabRepository.java
│ │ └── internal
│ │ └── ForgeUtils.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── forge
│ ├── CheckBuilderTests.java
│ ├── ForgeIntegrationTests.java
│ ├── ForgeTests.java
│ ├── HostedRepositoryPoolTests.java
│ ├── LabelConfigurationTests.java
│ ├── PullRequestBodyTests.java
│ ├── PullRequestPollerTests.java
│ ├── PullRequestTests.java
│ ├── PullRequestUtilsTests.java
│ ├── github
│ ├── GitHubApplicationTests.java
│ ├── GitHubHostTests.java
│ └── GitHubIntegrationTests.java
│ └── gitlab
│ └── GitLabIntegrationTests.java
├── gradle.properties
├── gradle
├── plugins
│ ├── .gitignore
│ ├── build.gradle
│ ├── skara-images
│ │ ├── build.gradle
│ │ ├── settings.gradle
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── gradle
│ │ │ └── images
│ │ │ ├── DownloadJDKTask.java
│ │ │ ├── ImageEnvironment.java
│ │ │ ├── ImagesPlugin.java
│ │ │ ├── LaunchersTask.java
│ │ │ └── LinkTask.java
│ ├── skara-module
│ │ ├── build.gradle
│ │ ├── settings.gradle
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── gradle
│ │ │ └── module
│ │ │ ├── ModuleExtension.java
│ │ │ └── ModulePlugin.java
│ ├── skara-proxy
│ │ ├── build.gradle
│ │ ├── settings.gradle
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── gradle
│ │ │ └── proxy
│ │ │ └── ProxyPlugin.java
│ ├── skara-reproduce
│ │ ├── build.gradle
│ │ ├── settings.gradle
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── gradle
│ │ │ └── reproduce
│ │ │ ├── ReproducePlugin.java
│ │ │ └── ReproduceTask.java
│ └── skara-version
│ │ ├── build.gradle
│ │ ├── settings.gradle
│ │ └── src
│ │ └── main
│ │ └── java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── gradle
│ │ └── version
│ │ └── VersionPlugin.java
└── wrapper
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── host
├── build.gradle
└── src
│ └── main
│ └── java
│ ├── module-info.java
│ └── org
│ └── openjdk
│ └── skara
│ └── host
│ ├── Credential.java
│ ├── Host.java
│ └── HostUser.java
├── ini
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── ini
│ │ ├── INI.java
│ │ └── Section.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── ini
│ └── INITests.java
├── issuetracker
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── issuetracker
│ │ ├── ActiveUserTracker.java
│ │ ├── Comment.java
│ │ ├── Issue.java
│ │ ├── IssueLinkBuilder.java
│ │ ├── IssueProject.java
│ │ ├── IssueProjectPoller.java
│ │ ├── IssueTracker.java
│ │ ├── IssueTrackerFactory.java
│ │ ├── IssueTrackerIssue.java
│ │ ├── Label.java
│ │ ├── Link.java
│ │ ├── WebLinkBuilder.java
│ │ └── jira
│ │ ├── JiraHost.java
│ │ ├── JiraIssue.java
│ │ ├── JiraIssueTrackerFactory.java
│ │ ├── JiraLinkType.java
│ │ ├── JiraProject.java
│ │ └── JiraVault.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── issuetracker
│ ├── IssueProjectPollerTests.java
│ ├── IssueTrackerTests.java
│ └── jira
│ └── JiraIntegrationTests.java
├── jbs
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── jbs
│ │ ├── Backports.java
│ │ ├── BuildCompare.java
│ │ └── JdkVersion.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── jbs
│ ├── BackportsIntegrationTests.java
│ ├── BackportsTests.java
│ ├── BuildCompareTests.java
│ └── JdkVersionTests.java
├── jcheck
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── jcheck
│ │ ├── AuthorCheck.java
│ │ ├── AuthorEmailIssue.java
│ │ ├── AuthorNameIssue.java
│ │ ├── BinaryCheck.java
│ │ ├── BinaryIssue.java
│ │ ├── BranchIssue.java
│ │ ├── BranchesCheck.java
│ │ ├── CensusConfiguration.java
│ │ ├── Check.java
│ │ ├── ChecksConfiguration.java
│ │ ├── CommitCheck.java
│ │ ├── CommitIssue.java
│ │ ├── CommitterCheck.java
│ │ ├── CommitterConfiguration.java
│ │ ├── CommitterEmailIssue.java
│ │ ├── CommitterIssue.java
│ │ ├── CommitterNameIssue.java
│ │ ├── CopyrightFormatCheck.java
│ │ ├── CopyrightFormatConfiguration.java
│ │ ├── CopyrightFormatIssue.java
│ │ ├── DuplicateIssuesCheck.java
│ │ ├── DuplicateIssuesIssue.java
│ │ ├── ExecutableCheck.java
│ │ ├── ExecutableIssue.java
│ │ ├── GeneralConfiguration.java
│ │ ├── HgTagCommitCheck.java
│ │ ├── HgTagCommitIssue.java
│ │ ├── InvalidReviewersIssue.java
│ │ ├── Issue.java
│ │ ├── IssueVisitor.java
│ │ ├── IssuesCheck.java
│ │ ├── IssuesConfiguration.java
│ │ ├── IssuesIssue.java
│ │ ├── IssuesTitleCheck.java
│ │ ├── IssuesTitleIssue.java
│ │ ├── JCheck.java
│ │ ├── JCheckConfiguration.java
│ │ ├── MergeConfiguration.java
│ │ ├── MergeMessageCheck.java
│ │ ├── MergeMessageIssue.java
│ │ ├── MessageCheck.java
│ │ ├── MessageIssue.java
│ │ ├── MessageWhitespaceIssue.java
│ │ ├── ProblemListsCheck.java
│ │ ├── ProblemListsConfiguration.java
│ │ ├── ProblemListsIssue.java
│ │ ├── RepositoryCheck.java
│ │ ├── RepositoryConfiguration.java
│ │ ├── ReviewersCheck.java
│ │ ├── ReviewersConfiguration.java
│ │ ├── SelfReviewIssue.java
│ │ ├── Severity.java
│ │ ├── SymlinkCheck.java
│ │ ├── SymlinkIssue.java
│ │ ├── TagIssue.java
│ │ ├── TagsCheck.java
│ │ ├── TooFewReviewersIssue.java
│ │ ├── Utilities.java
│ │ ├── WhitespaceCheck.java
│ │ ├── WhitespaceConfiguration.java
│ │ ├── WhitespaceIssue.java
│ │ └── iterators
│ │ ├── ConcatIterator.java
│ │ ├── FlatMapIterator.java
│ │ └── MapIterator.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── jcheck
│ ├── AuthorCheckTests.java
│ ├── BinaryCheckTests.java
│ ├── BranchesCheckTests.java
│ ├── CommitterCheckTests.java
│ ├── CopyrightFormatCheckTests.java
│ ├── DuplicateIssuesCheckTests.java
│ ├── ExecutableCheckTests.java
│ ├── HgTagCommitCheckTests.java
│ ├── IssuesCheckTests.java
│ ├── JCheckTests.java
│ ├── MergeMessageCheckTests.java
│ ├── MessageCheckTests.java
│ ├── ProblemListsCheckTests.java
│ ├── ReviewersCheckTests.java
│ ├── SymlinkCheckTests.java
│ ├── TagsCheckTests.java
│ ├── TestRepository.java
│ └── WhitespaceCheckTests.java
├── json
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── json
│ │ ├── JSON.java
│ │ ├── JSONArray.java
│ │ ├── JSONBoolean.java
│ │ ├── JSONDecimal.java
│ │ ├── JSONNull.java
│ │ ├── JSONNumber.java
│ │ ├── JSONObject.java
│ │ ├── JSONParser.java
│ │ ├── JSONString.java
│ │ ├── JSONValue.java
│ │ └── JWCC.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── json
│ ├── JSONParserTests.java
│ └── JWCCTests.java
├── mailinglist
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── mailinglist
│ │ ├── Conversation.java
│ │ ├── MailingListReader.java
│ │ ├── MailingListServer.java
│ │ ├── MailingListServerFactory.java
│ │ ├── Mbox.java
│ │ ├── mailman
│ │ ├── MailmanListReader.java
│ │ └── MailmanServer.java
│ │ └── mboxfile
│ │ ├── MboxFileListReader.java
│ │ └── MboxFileListServer.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── mailinglist
│ ├── MailmanTests.java
│ └── MboxTests.java
├── metrics
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── metrics
│ │ ├── Collector.java
│ │ ├── CollectorRegistry.java
│ │ ├── Counter.java
│ │ ├── Exporter.java
│ │ ├── Gauge.java
│ │ ├── Metric.java
│ │ └── PrometheusExporter.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── metrics
│ ├── CollectorRegistryTests.java
│ ├── CounterTests.java
│ ├── GaugeTests.java
│ └── PrometheusExpoterTests.java
├── network
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── network
│ │ ├── RestRequest.java
│ │ ├── RestRequestCache.java
│ │ ├── URIBuilder.java
│ │ └── UncheckedRestException.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── network
│ ├── RestRequestTests.java
│ └── URIBuilderTests.java
├── process
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── process
│ │ ├── Execution.java
│ │ └── Process.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── process
│ └── ProcessTests.java
├── proxy
├── build.gradle
└── src
│ └── main
│ └── java
│ ├── module-info.java
│ └── org
│ └── openjdk
│ └── skara
│ └── proxy
│ └── HttpProxy.java
├── settings.gradle
├── skara.gitconfig
├── skara.py
├── skara.sh
├── storage
├── build.gradle
└── src
│ ├── main
│ └── java
│ │ ├── module-info.java
│ │ └── org
│ │ └── openjdk
│ │ └── skara
│ │ └── storage
│ │ ├── FileStorage.java
│ │ ├── HostedRepositoryStorage.java
│ │ ├── RepositoryStorage.java
│ │ ├── Storage.java
│ │ ├── StorageBuilder.java
│ │ ├── StorageDeserializer.java
│ │ └── StorageSerializer.java
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── storage
│ ├── FileStorageTests.java
│ ├── HostedRepositoryStorageTests.java
│ └── RepositoryStorageTests.java
├── test.dockerfile
├── test
├── build.gradle
└── src
│ └── main
│ └── java
│ ├── module-info.java
│ └── org
│ └── openjdk
│ └── skara
│ └── test
│ ├── CensusBuilder.java
│ ├── CheckableRepository.java
│ ├── DisableAllBotsTestsOnWindows.java
│ ├── EnabledIfTestProperties.java
│ ├── HostCredentials.java
│ ├── SMTPServer.java
│ ├── TemporaryDirectory.java
│ ├── TestBotFactory.java
│ ├── TestBotRunner.java
│ ├── TestHost.java
│ ├── TestHostedRepository.java
│ ├── TestIssue.java
│ ├── TestIssueProject.java
│ ├── TestIssueStore.java
│ ├── TestIssueTrackerIssue.java
│ ├── TestIssueTrackerIssueStore.java
│ ├── TestMailmanServer.java
│ ├── TestProperties.java
│ ├── TestPullRequest.java
│ ├── TestPullRequestStore.java
│ ├── TestWebrevServer.java
│ └── TestableRepository.java
├── vcs
├── build.gradle
└── src
│ ├── main
│ ├── java
│ │ ├── module-info.java
│ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── vcs
│ │ │ ├── Author.java
│ │ │ ├── BinaryHunk.java
│ │ │ ├── BinaryPatch.java
│ │ │ ├── Bookmark.java
│ │ │ ├── Branch.java
│ │ │ ├── Commit.java
│ │ │ ├── CommitMetadata.java
│ │ │ ├── Commits.java
│ │ │ ├── Diff.java
│ │ │ ├── DiffComparator.java
│ │ │ ├── FileEntry.java
│ │ │ ├── FileType.java
│ │ │ ├── Hash.java
│ │ │ ├── Hunk.java
│ │ │ ├── Patch.java
│ │ │ ├── Range.java
│ │ │ ├── ReadOnlyRepository.java
│ │ │ ├── Reference.java
│ │ │ ├── Repository.java
│ │ │ ├── Status.java
│ │ │ ├── StatusEntry.java
│ │ │ ├── Submodule.java
│ │ │ ├── Tag.java
│ │ │ ├── TextualPatch.java
│ │ │ ├── Tree.java
│ │ │ ├── UnifiedDiffParser.java
│ │ │ ├── VCS.java
│ │ │ ├── WebrevStats.java
│ │ │ ├── git
│ │ │ ├── GitCombinedDiffParser.java
│ │ │ ├── GitCommitIterator.java
│ │ │ ├── GitCommitMetadata.java
│ │ │ ├── GitCommits.java
│ │ │ ├── GitRepository.java
│ │ │ └── GitVersion.java
│ │ │ ├── hg
│ │ │ ├── HgCommitIterator.java
│ │ │ ├── HgCommitMetadata.java
│ │ │ ├── HgCommits.java
│ │ │ └── HgRepository.java
│ │ │ ├── openjdk
│ │ │ ├── CommitMessage.java
│ │ │ ├── CommitMessageBuilder.java
│ │ │ ├── CommitMessageFormatter.java
│ │ │ ├── CommitMessageFormatters.java
│ │ │ ├── CommitMessageParser.java
│ │ │ ├── CommitMessageParsers.java
│ │ │ ├── CommitMessageSyntax.java
│ │ │ ├── Issue.java
│ │ │ ├── OpenJDKTag.java
│ │ │ └── convert
│ │ │ │ ├── Attribution.java
│ │ │ │ ├── Converter.java
│ │ │ │ ├── ConverterCommitMessageParser.java
│ │ │ │ ├── GitCommitMetadata.java
│ │ │ │ ├── GitToHgConverter.java
│ │ │ │ ├── HgToGitConverter.java
│ │ │ │ ├── Mark.java
│ │ │ │ └── Pipe.java
│ │ │ └── tools
│ │ │ ├── GitRawDiffParser.java
│ │ │ ├── PatchHeader.java
│ │ │ └── UnixStreamReader.java
│ └── resources
│ │ └── ext.py
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── vcs
│ ├── AuthorTests.java
│ ├── RepositoryTests.java
│ ├── UnifiedDiffParserTests.java
│ ├── git
│ └── GitVersionTest.java
│ └── openjdk
│ ├── CommitMessageBuilderTests.java
│ ├── CommitMessageFormattersTests.java
│ ├── CommitMessageParsersTests.java
│ ├── IssueTests.java
│ ├── OpenJDKTagTests.java
│ └── converter
│ ├── GitToHgConverterTests.java
│ └── HgToGitConverterTests.java
├── version
├── build.gradle
└── src
│ └── main
│ └── java
│ ├── module-info.java
│ └── org
│ └── openjdk
│ └── skara
│ └── version
│ └── Version.java
├── webrev
├── build.gradle
└── src
│ ├── main
│ ├── java
│ │ ├── module-info.java
│ │ └── org
│ │ │ └── openjdk
│ │ │ └── skara
│ │ │ └── webrev
│ │ │ ├── AddedFileView.java
│ │ │ ├── AddedPatchView.java
│ │ │ ├── CDiffView.java
│ │ │ ├── DiffTooLargeException.java
│ │ │ ├── FileView.java
│ │ │ ├── FramesView.java
│ │ │ ├── FullView.java
│ │ │ ├── HTML.java
│ │ │ ├── HunkCoalescer.java
│ │ │ ├── IndexView.java
│ │ │ ├── MetadataFormatter.java
│ │ │ ├── ModifiedFileView.java
│ │ │ ├── Navigation.java
│ │ │ ├── PatchView.java
│ │ │ ├── RawView.java
│ │ │ ├── RemovedFileView.java
│ │ │ ├── RemovedPatchView.java
│ │ │ ├── SDiffView.java
│ │ │ ├── Stats.java
│ │ │ ├── Template.java
│ │ │ ├── UDiffView.java
│ │ │ ├── View.java
│ │ │ ├── ViewUtils.java
│ │ │ ├── Webrev.java
│ │ │ └── WebrevMetaData.java
│ └── resources
│ │ ├── nanoduke.ico
│ │ ├── navigation.html
│ │ ├── navigation.js
│ │ └── style.css
│ └── test
│ └── java
│ └── org
│ └── openjdk
│ └── skara
│ └── webrev
│ ├── HTMLTests.java
│ ├── HunkCoalescerTest.java
│ └── WebrevTests.java
└── xml
├── build.gradle
└── src
└── main
└── java
├── module-info.java
└── org
└── openjdk
└── skara
└── xml
└── XML.java
/.dockerignore:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | #
5 | # This code is free software; you can redistribute it and/or modify it
6 | # under the terms of the GNU General Public License version 2 only, as
7 | # published by the Free Software Foundation.
8 | #
9 | # This code is distributed in the hope that it will be useful, but WITHOUT
10 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | # version 2 for more details (a copy is included in the LICENSE file that
13 | # accompanied this code).
14 | #
15 | # You should have received a copy of the GNU General Public License version
16 | # 2 along with this work; if not, write to the Free Software Foundation,
17 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | #
19 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | # or visit www.oracle.com if you need additional information or have any
21 | # questions.
22 | #
23 | **/.*
24 | **/build/
25 | **/out/
26 | **/bin/
27 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | #
5 | # This code is free software; you can redistribute it and/or modify it
6 | # under the terms of the GNU General Public License version 2 only, as
7 | # published by the Free Software Foundation.
8 | #
9 | # This code is distributed in the hope that it will be useful, but WITHOUT
10 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | # version 2 for more details (a copy is included in the LICENSE file that
13 | # accompanied this code).
14 | #
15 | # You should have received a copy of the GNU General Public License version
16 | # 2 along with this work; if not, write to the Free Software Foundation,
17 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | #
19 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | # or visit www.oracle.com if you need additional information or have any
21 | # questions.
22 | #
23 | gradlew.bat text eol=crlf
24 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | #
5 | # This code is free software; you can redistribute it and/or modify it
6 | # under the terms of the GNU General Public License version 2 only, as
7 | # published by the Free Software Foundation.
8 | #
9 | # This code is distributed in the hope that it will be useful, but WITHOUT
10 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | # version 2 for more details (a copy is included in the LICENSE file that
13 | # accompanied this code).
14 | #
15 | # You should have received a copy of the GNU General Public License version
16 | # 2 along with this work; if not, write to the Free Software Foundation,
17 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | #
19 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | # or visit www.oracle.com if you need additional information or have any
21 | # questions.
22 | #
23 | .gradle
24 | .jdk
25 | .jib
26 | .classpath
27 | .idea
28 | .project
29 | .settings
30 | *.iml
31 | build/
32 | out/
33 | bin/
34 | test.properties
35 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing
2 |
3 | Thank you for considering contributing to project
4 | [Skara](https://openjdk.org/projects/skara)! For information about
5 | contributing to [OpenJDK](https://openjdk.org/) projects, which include
6 | Skara, please see .
7 |
8 | ## Mailing List
9 |
10 | Project Skara happily accept contributions in the forms of patches sent to
11 | our mailing list, `skara-dev@openjdk.org`. See
12 | for instructions
13 | on how to subscribe of if you want to read the archives
14 |
15 | ## Pull Requests
16 |
17 | Project Skara also gladly accepts contributions in the form of pull requests
18 | on [GitHub](https://github.com/openjdk/skara/pulls/).
19 |
20 | ## Issues
21 |
22 | You can find open issues to work on in the Skara project in the
23 | [JDK Bug System](https://bugs.openjdk.org/):
24 | .
25 |
26 | ## Larger Contributions
27 |
28 | If you have a larger contribution in mind then we highly encourage you to first
29 | discuss your changes on the Skara mailing list, `skara-dev@openjdk.org`,
30 | _before_ you start to write the code.
31 |
32 | ## Questions
33 |
34 | If you have a question or need help, please send an email to our mailing list
35 | `skara-dev@openjdk.org` or stop by the IRC channel `#openjdk` on
36 | [OFTC](https://www.oftc.net/) (see for details).
37 |
--------------------------------------------------------------------------------
/args/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.args'
26 | test {
27 | requires 'org.junit.jupiter.api'
28 | opens 'org.openjdk.skara.args' to 'org.junit.platform.commons'
29 | }
30 | }
31 |
32 | publishing {
33 | publications {
34 | args(MavenPublication) {
35 | from components.java
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/args/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.args {
24 | exports org.openjdk.skara.args;
25 | }
26 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/CommandCtor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public interface CommandCtor {
26 | T construct(String name, String helpText, Main main);
27 | }
28 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/CommandHelpText.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class CommandHelpText {
26 | private final CommandCtor ctor;
27 | private final String name;
28 |
29 | CommandHelpText(CommandCtor ctor, String name) {
30 | this.ctor = ctor;
31 | this.name = name;
32 | }
33 |
34 | public CommandMain helptext(String helpText) {
35 | return new CommandMain<>(ctor, name, helpText);
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/CommandMain.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class CommandMain {
26 | private final CommandCtor ctor;
27 | private final String name;
28 | private final String helpText;
29 |
30 | CommandMain(CommandCtor ctor, String name, String helpText) {
31 | this.ctor = ctor;
32 | this.name = name;
33 | this.helpText = helpText;
34 | }
35 |
36 | public T main(Main main) {
37 | return ctor.construct(name, helpText, main);
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/Default.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class Default extends Command {
26 | Default(String name, String helpText, Main main) {
27 | super(name, helpText, main);
28 | }
29 |
30 | public static CommandHelpText name(String name) {
31 | return new CommandHelpText<>(Default::new, name);
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/Executable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | @FunctionalInterface
26 | public interface Executable {
27 | void execute() throws Exception;
28 | }
29 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/InputDescriber.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class InputDescriber {
26 | private final int position;
27 |
28 | InputDescriber(int position) {
29 | this.position = position;
30 | }
31 |
32 | public InputQuantifier describe(String description) {
33 | return new InputQuantifier(position, description);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/Main.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | @FunctionalInterface
26 | public interface Main {
27 | void main(String[] args) throws Exception;
28 | }
29 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/Option.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class Option {
26 | public static OptionFullname shortcut(String s) {
27 | return new OptionFullname(s);
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/OptionDescribe.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class OptionDescribe {
26 | private final String shortcut;
27 | private final String fullname;
28 |
29 | OptionDescribe(String shortcut, String fullname) {
30 | this.shortcut = shortcut;
31 | this.fullname = fullname;
32 | }
33 |
34 | public OptionHelptext describe(String desc) {
35 | return new OptionHelptext(shortcut, fullname, desc);
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/OptionFullname.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class OptionFullname {
26 | private final String shortcut;
27 |
28 | OptionFullname(String shortcut) {
29 | this.shortcut = shortcut;
30 | }
31 |
32 | public OptionDescribe fullname(String name) {
33 | return new OptionDescribe(shortcut, name);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/OptionHelptext.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class OptionHelptext {
26 | private final String shortcut;
27 | private final String fullname;
28 | private final String description;
29 |
30 | OptionHelptext(String shortcut, String fullname, String description) {
31 | this.shortcut = shortcut;
32 | this.fullname = fullname;
33 | this.description = description;
34 | }
35 |
36 | public OptionQualifier helptext(String help) {
37 | return new OptionQualifier(shortcut, fullname, description, help);
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/Switch.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class Switch {
26 | public static SwitchFullname shortcut(String s) {
27 | return new SwitchFullname(s);
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/SwitchFullname.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class SwitchFullname {
26 | private final String shortcut;
27 |
28 | SwitchFullname(String shortcut) {
29 | this.shortcut = shortcut;
30 | }
31 |
32 | public SwitchHelptext fullname(String name) {
33 | return new SwitchHelptext(shortcut, name);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/args/src/main/java/org/openjdk/skara/args/SwitchHelptext.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | public class SwitchHelptext {
26 | private final String shortcut;
27 | private final String fullname;
28 |
29 | SwitchHelptext(String shortcut, String fullname) {
30 | this.shortcut = shortcut;
31 | this.fullname = fullname;
32 | }
33 |
34 | public SwitchQualifier helptext(String help) {
35 | return new SwitchQualifier(shortcut, fullname, help);
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/args/src/test/java/org/openjdk/skara/args/SwitchTests.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.args;
24 |
25 | import org.junit.jupiter.api.Test;
26 |
27 | import static org.junit.jupiter.api.Assertions.assertTrue;
28 |
29 | public class SwitchTests {
30 | @Test
31 | void testFlagDescIsSwitch() {
32 | var f = Switch.shortcut("s")
33 | .fullname("switch")
34 | .helptext("This is a switch")
35 | .optional();
36 | assertTrue(f.isSwitch());
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/bot/src/main/java/org/openjdk/skara/bot/Bot.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bot;
24 |
25 | import org.openjdk.skara.json.JSONValue;
26 |
27 | import java.util.List;
28 |
29 | public interface Bot {
30 | List getPeriodicItems();
31 | default List processWebHook(JSONValue body) {
32 | return List.of();
33 | };
34 | String name();
35 | }
36 |
--------------------------------------------------------------------------------
/bot/src/main/java/org/openjdk/skara/bot/ConfigurationError.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bot;
24 |
25 | public class ConfigurationError extends Exception {
26 | ConfigurationError(String message) {
27 | super(message);
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/bot/src/main/java/org/openjdk/skara/bot/LogContextMap.java:
--------------------------------------------------------------------------------
1 | package org.openjdk.skara.bot;
2 |
3 | import java.util.Collections;
4 | import java.util.HashMap;
5 | import java.util.Map;
6 | import java.util.Set;
7 |
8 | /**
9 | * This class holds a static thread local hashmap to store temporary log
10 | * metadata which our custom StreamHandlers can pick up and include in log
11 | * messages.
12 | */
13 | public class LogContextMap {
14 |
15 | private static final ThreadLocal> threadContextMap = new ThreadLocal<>();
16 |
17 | public static void put(String key, String value) {
18 | if (threadContextMap.get() == null) {
19 | threadContextMap.set(new HashMap<>());
20 | }
21 | var map = threadContextMap.get();
22 | map.put(key, value);
23 | }
24 |
25 | public static String get(String key) {
26 | if (threadContextMap.get() != null) {
27 | return threadContextMap.get().get(key);
28 | } else {
29 | return null;
30 | }
31 | }
32 |
33 | public static String remove(String key) {
34 | if (threadContextMap.get() != null) {
35 | return threadContextMap.get().remove(key);
36 | } else {
37 | return null;
38 | }
39 | }
40 |
41 | public static Set> entrySet() {
42 | if (threadContextMap.get() != null) {
43 | return threadContextMap.get().entrySet();
44 | } else {
45 | return Collections.emptySet();
46 | }
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/bot/src/test/java/org/openjdk/skara/bot/LogContextTests.java:
--------------------------------------------------------------------------------
1 | package org.openjdk.skara.bot;
2 |
3 | import org.junit.jupiter.api.Test;
4 |
5 | import static org.junit.jupiter.api.Assertions.assertEquals;
6 | import static org.junit.jupiter.api.Assertions.assertNull;
7 |
8 | public class LogContextTests {
9 |
10 | @Test
11 | public void simple() {
12 | String key = "keyname";
13 | assertNull(LogContextMap.get(key), "Key " + key + " already present in context");
14 | try (var __ = new LogContext(key, "value")) {
15 | assertEquals("value", LogContextMap.get(key), "Context property not set");
16 | }
17 | assertNull(LogContextMap.get(key), "Context property not removed");
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/bots/bridgekeeper/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | import org.openjdk.skara.bots.bridgekeeper.BridgekeeperBotFactory;
2 |
3 | /*
4 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
5 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 | *
7 | * This code is free software; you can redistribute it and/or modify it
8 | * under the terms of the GNU General Public License version 2 only, as
9 | * published by the Free Software Foundation.
10 | *
11 | * This code is distributed in the hope that it will be useful, but WITHOUT
12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 | * version 2 for more details (a copy is included in the LICENSE file that
15 | * accompanied this code).
16 | *
17 | * You should have received a copy of the GNU General Public License version
18 | * 2 along with this work; if not, write to the Free Software Foundation,
19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 | *
21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 | * or visit www.oracle.com if you need additional information or have any
23 | * questions.
24 | */
25 | module org.openjdk.skara.bots.bridgekeeper {
26 | requires org.openjdk.skara.bot;
27 | requires java.logging;
28 |
29 | provides org.openjdk.skara.bot.BotFactory with BridgekeeperBotFactory;
30 | }
31 |
--------------------------------------------------------------------------------
/bots/checkout/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.bots.checkout {
24 | requires org.openjdk.skara.vcs;
25 | requires org.openjdk.skara.host;
26 | requires org.openjdk.skara.network;
27 | requires org.openjdk.skara.bot;
28 | requires org.openjdk.skara.process;
29 | requires org.openjdk.skara.storage;
30 | requires java.logging;
31 |
32 | provides org.openjdk.skara.bot.BotFactory with org.openjdk.skara.bots.checkout.CheckoutBotFactory;
33 | }
34 |
--------------------------------------------------------------------------------
/bots/cli/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.bots.cli {
24 | requires org.openjdk.skara.vcs;
25 | requires org.openjdk.skara.jcheck;
26 | requires org.openjdk.skara.host;
27 | requires org.openjdk.skara.bot;
28 | requires org.openjdk.skara.census;
29 | requires org.openjdk.skara.json;
30 | requires org.openjdk.skara.args;
31 | requires org.openjdk.skara.process;
32 | requires org.openjdk.skara.proxy;
33 | requires org.openjdk.skara.network;
34 | requires org.openjdk.skara.version;
35 |
36 | requires java.net.http;
37 | requires java.sql;
38 |
39 | exports org.openjdk.skara.bots.cli;
40 | }
41 |
42 |
--------------------------------------------------------------------------------
/bots/forward/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.bots.forward {
24 | requires org.openjdk.skara.bot;
25 | requires org.openjdk.skara.vcs;
26 | requires java.logging;
27 |
28 | provides org.openjdk.skara.bot.BotFactory with org.openjdk.skara.bots.forward.ForwardBotFactory;
29 | }
30 |
--------------------------------------------------------------------------------
/bots/hgbridge/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.bots.hgbridge {
24 | requires org.openjdk.skara.vcs;
25 | requires org.openjdk.skara.host;
26 | requires org.openjdk.skara.network;
27 | requires org.openjdk.skara.census;
28 | requires org.openjdk.skara.bot;
29 | requires org.openjdk.skara.process;
30 | requires java.logging;
31 |
32 | provides org.openjdk.skara.bot.BotFactory with org.openjdk.skara.bots.hgbridge.JBridgeBotFactory;
33 | }
34 |
--------------------------------------------------------------------------------
/bots/merge/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.bots.merge {
24 | requires org.openjdk.skara.bot;
25 | requires org.openjdk.skara.vcs;
26 | requires org.openjdk.skara.jcheck;
27 | requires java.logging;
28 |
29 | provides org.openjdk.skara.bot.BotFactory with org.openjdk.skara.bots.merge.MergeBotFactory;
30 | }
31 |
--------------------------------------------------------------------------------
/bots/merge/src/main/java/org/openjdk/skara/bots/merge/Clock.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.merge;
24 |
25 | import java.time.ZonedDateTime;
26 |
27 | interface Clock {
28 | ZonedDateTime now();
29 | }
30 |
--------------------------------------------------------------------------------
/bots/mirror/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.bots.mirror {
24 | requires org.openjdk.skara.bot;
25 | requires org.openjdk.skara.vcs;
26 | requires java.logging;
27 |
28 | provides org.openjdk.skara.bot.BotFactory with org.openjdk.skara.bots.mirror.MirrorBotFactory;
29 | }
30 |
--------------------------------------------------------------------------------
/bots/mlbridge/src/main/java/org/openjdk/skara/bots/mlbridge/HostUserToEmailAuthor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.mlbridge;
24 |
25 | import org.openjdk.skara.email.EmailAddress;
26 | import org.openjdk.skara.host.HostUser;
27 |
28 | @FunctionalInterface
29 | interface HostUserToEmailAuthor {
30 | EmailAddress author(HostUser user);
31 | }
32 |
--------------------------------------------------------------------------------
/bots/mlbridge/src/main/java/org/openjdk/skara/bots/mlbridge/HostUserToRole.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.mlbridge;
24 |
25 | import org.openjdk.skara.host.HostUser;
26 |
27 | @FunctionalInterface
28 | interface HostUserToRole {
29 | String role(HostUser user);
30 | }
31 |
--------------------------------------------------------------------------------
/bots/mlbridge/src/main/java/org/openjdk/skara/bots/mlbridge/HostUserToUsername.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.mlbridge;
24 |
25 | import org.openjdk.skara.host.HostUser;
26 |
27 | @FunctionalInterface
28 | interface HostUserToUsername {
29 | String username(HostUser user);
30 | }
31 |
--------------------------------------------------------------------------------
/bots/mlbridge/src/main/java/org/openjdk/skara/bots/mlbridge/MailingListConfiguration.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.mlbridge;
24 |
25 | import org.openjdk.skara.email.EmailAddress;
26 |
27 | import java.util.*;
28 |
29 | class MailingListConfiguration {
30 | private EmailAddress list;
31 | private Set labels;
32 |
33 | MailingListConfiguration(EmailAddress list, Set labels) {
34 | this.list = list;
35 | this.labels = labels;
36 | }
37 |
38 | EmailAddress list() {
39 | return list;
40 | }
41 |
42 | Set labels() {
43 | return labels;
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/bots/mlbridge/src/main/java/org/openjdk/skara/bots/mlbridge/WebrevNotification.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.mlbridge;
24 |
25 | import java.util.List;
26 |
27 | @FunctionalInterface
28 | interface WebrevNotification {
29 | void notify(int index, List webrevDescriptions);
30 | }
31 |
--------------------------------------------------------------------------------
/bots/notify/src/main/java/org/openjdk/skara/bots/notify/Emitter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | package org.openjdk.skara.bots.notify;
25 |
26 | public interface Emitter {
27 | void registerPullRequestListener(PullRequestListener listener);
28 | void registerRepositoryListener(RepositoryListener listener);
29 | }
30 |
--------------------------------------------------------------------------------
/bots/notify/src/main/java/org/openjdk/skara/bots/notify/NonRetriableException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.notify;
24 |
25 | public class NonRetriableException extends Exception {
26 | private final Throwable cause;
27 |
28 | public NonRetriableException(Throwable cause) {
29 | this.cause = cause;
30 | }
31 |
32 | public Throwable cause() {
33 | return cause;
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/bots/pr/src/main/java/org/openjdk/skara/bots/pr/MergePullRequestReviewConfiguration.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.pr;
24 |
25 | enum MergePullRequestReviewConfiguration {
26 | ALWAYS,
27 | NEVER,
28 | JCHECK
29 | }
30 |
--------------------------------------------------------------------------------
/bots/pr/src/main/java/org/openjdk/skara/bots/pr/PRRecord.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.pr;
24 |
25 | public record PRRecord(String repoName, String prId) {
26 | }
27 |
--------------------------------------------------------------------------------
/bots/pr/src/test/java/org/openjdk/skara/bots/pr/CommitCommandAsserts.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, 2024, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.pr;
24 |
25 | import org.openjdk.skara.forge.CommitComment;
26 |
27 | import java.util.List;
28 |
29 | import static org.junit.jupiter.api.Assertions.assertTrue;
30 |
31 | public class CommitCommandAsserts {
32 | public static void assertLastCommentContains(List comments, String contains) {
33 | assertTrue(!comments.isEmpty());
34 | var lastComment = comments.getLast();
35 | assertTrue(lastComment.body().contains(contains), lastComment.body());
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/bots/submit/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | import org.openjdk.skara.bots.submit.*;
24 |
25 | module org.openjdk.skara.bots.submit {
26 | requires org.openjdk.skara.bot;
27 | requires org.openjdk.skara.host;
28 | requires org.openjdk.skara.census;
29 | requires org.openjdk.skara.json;
30 | requires org.openjdk.skara.vcs;
31 | requires java.logging;
32 |
33 | provides org.openjdk.skara.bot.BotFactory with SubmitBotFactory;
34 | provides org.openjdk.skara.bots.submit.SubmitExecutorFactory with ShellExecutorFactory;
35 |
36 | uses org.openjdk.skara.bots.submit.SubmitExecutorFactory;
37 | }
38 |
--------------------------------------------------------------------------------
/bots/submit/src/main/java/org/openjdk/skara/bots/submit/SubmitExecutor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.submit;
24 |
25 | import org.openjdk.skara.forge.CheckBuilder;
26 |
27 | import java.time.Duration;
28 | import java.nio.file.Path;
29 |
30 | public interface SubmitExecutor {
31 | Duration timeout();
32 | String checkName();
33 | void run(Path prFiles, CheckBuilder checkBuilder, Runnable updateProgress);
34 | }
35 |
--------------------------------------------------------------------------------
/bots/synclabel/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.bots.synclabel {
24 | requires org.openjdk.skara.vcs;
25 | requires org.openjdk.skara.host;
26 | requires org.openjdk.skara.network;
27 | requires org.openjdk.skara.bot;
28 | requires org.openjdk.skara.process;
29 | requires org.openjdk.skara.storage;
30 | requires org.openjdk.skara.jbs;
31 | requires java.logging;
32 |
33 | provides org.openjdk.skara.bot.BotFactory with org.openjdk.skara.bots.synclabel.SyncLabelBotFactory;
34 | }
35 |
--------------------------------------------------------------------------------
/bots/tester/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.bots.tester {
24 | requires org.openjdk.skara.bot;
25 | requires org.openjdk.skara.vcs;
26 | requires org.openjdk.skara.ci;
27 | requires org.openjdk.skara.census;
28 | requires org.openjdk.skara.jcheck;
29 |
30 | requires java.logging;
31 |
32 | provides org.openjdk.skara.bot.BotFactory with org.openjdk.skara.bots.tester.TestBotFactory;
33 | }
34 |
--------------------------------------------------------------------------------
/bots/tester/src/main/java/org/openjdk/skara/bots/tester/Stage.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.bots.tester;
24 |
25 | enum Stage {
26 | NA,
27 | ERROR,
28 | REQUESTED,
29 | PENDING,
30 | APPROVED,
31 | STARTED,
32 | CANCELLED,
33 | FINISHED
34 | }
35 |
--------------------------------------------------------------------------------
/bots/testinfo/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.bots.testinfo {
24 | requires org.openjdk.skara.vcs;
25 | requires org.openjdk.skara.host;
26 | requires org.openjdk.skara.network;
27 | requires org.openjdk.skara.bot;
28 | requires org.openjdk.skara.process;
29 | requires org.openjdk.skara.storage;
30 | requires java.logging;
31 |
32 | provides org.openjdk.skara.bot.BotFactory with org.openjdk.skara.bots.testinfo.TestInfoBotFactory;
33 | }
34 |
--------------------------------------------------------------------------------
/bots/topological/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.bots.topological {
24 | requires org.openjdk.skara.bot;
25 | requires org.openjdk.skara.vcs;
26 | requires org.openjdk.skara.json;
27 | requires java.logging;
28 |
29 | provides org.openjdk.skara.bot.BotFactory with org.openjdk.skara.bots.topological.TopologicalBotFactory;
30 | }
31 |
--------------------------------------------------------------------------------
/census/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.census {
24 | requires org.openjdk.skara.xml;
25 | requires static org.openjdk.skara.forge;
26 | requires java.xml;
27 | requires java.net.http;
28 | requires java.logging;
29 | exports org.openjdk.skara.census;
30 | }
31 |
--------------------------------------------------------------------------------
/census/src/test/java/org/openjdk/skara/census/MemberTests.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.census;
24 |
25 | import org.junit.jupiter.api.Test;
26 | import static org.junit.jupiter.api.Assertions.*;
27 |
28 | class MemberTests {
29 | @Test
30 | void testToString() {
31 | var m = new Member(new Contributor("user_1", "User Number 1"), 1);
32 | assertEquals("user_1 (User Number 1) [1,)", m.toString());
33 |
34 | m = new Member(new Contributor("user_1", "User Number 1"), 1, 2);
35 | assertEquals("user_1 (User Number 1) [1,2)", m.toString());
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/ci/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.ci'
26 | test {
27 | requires 'org.junit.jupiter.api'
28 | requires 'org.openjdk.skara.test'
29 | opens 'org.openjdk.skara.ci' to 'org.junit.platform.commons'
30 | }
31 | }
32 |
33 | dependencies {
34 | implementation project(':host')
35 | implementation project(':json')
36 | implementation project(':forge')
37 | implementation project(':issuetracker')
38 | }
39 |
--------------------------------------------------------------------------------
/ci/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.ci {
24 | requires org.openjdk.skara.host;
25 | requires org.openjdk.skara.json;
26 | requires org.openjdk.skara.forge;
27 |
28 | uses org.openjdk.skara.ci.ContinuousIntegrationFactory;
29 | exports org.openjdk.skara.ci;
30 | }
31 |
--------------------------------------------------------------------------------
/ci/src/main/java/org/openjdk/skara/ci/ContinuousIntegrationFactory.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.ci;
24 |
25 | import org.openjdk.skara.json.JSONObject;
26 |
27 | import java.net.URI;
28 | import java.util.*;
29 | import java.util.stream.*;
30 |
31 | public interface ContinuousIntegrationFactory {
32 | ContinuousIntegration create(URI uri, JSONObject configuration);
33 |
34 | static List factories() {
35 | return StreamSupport.stream(ServiceLoader.load(ContinuousIntegrationFactory.class).spliterator(), false)
36 | .collect(Collectors.toList());
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/ci/src/main/java/org/openjdk/skara/ci/Test.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.ci;
24 |
25 | public class Test {
26 | public static enum Kind {
27 | SINGLE,
28 | GROUP
29 | }
30 |
31 | private final Kind kind;
32 | private final String name;
33 |
34 | public Test(Kind kind, String name) {
35 | this.kind = kind;
36 | this.name = name;
37 | }
38 |
39 | public Kind kind() {
40 | return kind;
41 | }
42 |
43 | public String name() {
44 | return name;
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/cli/resources/man/man1/git-jcheck.1:
--------------------------------------------------------------------------------
1 | \"
2 | \" Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | \" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | \"
5 | \" This code is free software; you can redistribute it and/or modify it
6 | \" under the terms of the GNU General Public License version 2 only, as
7 | \" published by the Free Software Foundation.
8 | \"
9 | \" This code is distributed in the hope that it will be useful, but WITHOUT
10 | \" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | \" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | \" version 2 for more details (a copy is included in the LICENSE file that
13 | \" accompanied this code).
14 | \"
15 | \" You should have received a copy of the GNU General Public License version
16 | \" 2 along with this work; if not, write to the Free Software Foundation,
17 | \" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | \"
19 | \" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | \" or visit www.oracle.com if you need additional information or have any
21 | \" questions.
22 | \"
23 | .TH GIT-JCHECK 1
24 | .SH NAME
25 | git-jcheck \- check that changes conform to OpenJDK standards
26 | .SH SYNOPSIS
27 | \fIgit jcheck\fR []
28 | .SH DESCRIPTION
29 | Check that changes conforms to OpenJDK standards.
30 | .PP
31 | .TP
32 | \fIgit jcheck\fR []
33 | Check changes in (defaults to HEAD^..HEAD).
34 | .SH OPTIONS
35 | None
36 | .SH SEE ALSO
37 | \fBgit-diff(1)\fR, \fBgitrevisions(7)\fR
38 |
--------------------------------------------------------------------------------
/cli/resources/man/man1/git-verify-import.1:
--------------------------------------------------------------------------------
1 | \"
2 | \" Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | \" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | \"
5 | \" This code is free software; you can redistribute it and/or modify it
6 | \" under the terms of the GNU General Public License version 2 only, as
7 | \" published by the Free Software Foundation.
8 | \"
9 | \" This code is distributed in the hope that it will be useful, but WITHOUT
10 | \" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | \" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | \" version 2 for more details (a copy is included in the LICENSE file that
13 | \" accompanied this code).
14 | \"
15 | \" You should have received a copy of the GNU General Public License version
16 | \" 2 along with this work; if not, write to the Free Software Foundation,
17 | \" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | \"
19 | \" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | \" or visit www.oracle.com if you need additional information or have any
21 | \" questions.
22 | \"
23 | .TH GIT-VERIFY-IMPORT 1
24 | .SH NAME
25 | git-verify-import \- verifies that a fast-import was done correctly
26 | .SH SYNOPSIS
27 | \fIgit verify-import\fR
28 | .SH DESCRIPTION
29 | Verifies that a fast-import from a Mercurial (hg) repository was done correctly.
30 | .PP
31 | .TP
32 | \fIgit verify-import\fR
33 | Check that the repository was successfully imported.
34 | .SH OPTIONS
35 | .TP
36 | -h, --help
37 | Show help message
38 | .PP
39 | .TP
40 | -v, --verbose
41 | Turn on verbose output, useful for debugging
42 | .SH SEE ALSO
43 | \fBgit-fast-import(1)\fR
44 |
--------------------------------------------------------------------------------
/deps.env:
--------------------------------------------------------------------------------
1 | JDK_LINUX_X64_URL="https://download.java.net/java/GA/jdk21.0.1/415e3f918a1f4062a0074a2794853d0d/12/GPL/openjdk-21.0.1_linux-x64_bin.tar.gz"
2 | JDK_LINUX_X64_SHA256="7e80146b2c3f719bf7f56992eb268ad466f8854d5d6ae11805784608e458343f"
3 |
4 | JDK_LINUX_AARCH64_URL="https://download.java.net/java/GA/jdk21.0.1/415e3f918a1f4062a0074a2794853d0d/12/GPL/openjdk-21.0.1_linux-aarch64_bin.tar.gz"
5 | JDK_LINUX_AARCH64_SHA256="f5e4e4622756fafe05ac0105a8efefa1152c8aad085a2bbb9466df0721bf2ba4"
6 |
7 | JDK_MACOS_X64_URL="https://download.java.net/java/GA/jdk21.0.1/415e3f918a1f4062a0074a2794853d0d/12/GPL/openjdk-21.0.1_macos-x64_bin.tar.gz"
8 | JDK_MACOS_X64_SHA256="1ca6db9e6c09752f842eee6b86a2f7e51b76ae38e007e936b9382b4c3134e9ea"
9 |
10 | JDK_MACOS_AARCH64_URL="https://download.java.net/java/GA/jdk21.0.1/415e3f918a1f4062a0074a2794853d0d/12/GPL/openjdk-21.0.1_macos-aarch64_bin.tar.gz"
11 | JDK_MACOS_AARCH64_SHA256="9760eaa019b6d214a06bd44a304f3700ac057d025000bdfb9739b61080969a96"
12 |
13 | JDK_WINDOWS_X64_URL="https://download.java.net/java/GA/jdk21.0.1/415e3f918a1f4062a0074a2794853d0d/12/GPL/openjdk-21.0.1_windows-x64_bin.zip"
14 | JDK_WINDOWS_X64_SHA256="77ea464f4fa7cbcbffe0124af44707e8e5ad8c1ce2373f1d94a64d9b20ba0c69"
15 |
16 | GRADLE_URL="https://services.gradle.org/distributions/gradle-8.5-bin.zip"
17 | GRADLE_SHA256="9d926787066a081739e8200858338b4a69e837c3a821a33aca9db09dd4a41026"
18 |
--------------------------------------------------------------------------------
/email/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.email'
26 | test {
27 | requires 'org.openjdk.skara.test'
28 | requires 'org.junit.jupiter.api'
29 | opens 'org.openjdk.skara.email' to 'org.junit.platform.commons'
30 | }
31 | }
32 |
33 | dependencies {
34 | testImplementation project(':test')
35 | }
36 |
37 | publishing {
38 | publications {
39 | email(MavenPublication) {
40 | from components.java
41 | }
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/email/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.email {
24 | requires java.logging;
25 |
26 | exports org.openjdk.skara.email;
27 | }
28 |
--------------------------------------------------------------------------------
/encoding/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.encoding'
26 | test {
27 | requires 'org.junit.jupiter.api'
28 | opens 'org.openjdk.skara.encoding' to 'org.junit.platform.commons'
29 | }
30 | }
31 |
32 | publishing {
33 | publications {
34 | encoding(MavenPublication) {
35 | from components.java
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/encoding/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.encoding {
24 | exports org.openjdk.skara.encoding;
25 | }
26 |
27 |
--------------------------------------------------------------------------------
/forge/src/main/java/org/openjdk/skara/forge/CheckAnnotationLevel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.forge;
24 |
25 | public enum CheckAnnotationLevel {
26 | NOTICE,
27 | WARNING,
28 | FAILURE
29 | }
30 |
--------------------------------------------------------------------------------
/forge/src/main/java/org/openjdk/skara/forge/CheckStatus.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.forge;
24 |
25 | public enum CheckStatus {
26 | IN_PROGRESS,
27 | SUCCESS,
28 | FAILURE,
29 | CANCELLED,
30 | SKIPPED,
31 | STALE
32 | }
33 |
--------------------------------------------------------------------------------
/forge/src/main/java/org/openjdk/skara/forge/Collaborator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.forge;
24 |
25 | import org.openjdk.skara.host.HostUser;
26 |
27 | /**
28 | * A repository collaborator is a user and a set of permissions, currently only
29 | * 'canPush'.
30 | */
31 | public record Collaborator(HostUser user, boolean canPush) {
32 | }
33 |
--------------------------------------------------------------------------------
/forge/src/main/java/org/openjdk/skara/forge/CommitFailure.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.forge;
24 |
25 | public class CommitFailure extends Exception {
26 | public CommitFailure(String reason) {
27 | super(reason);
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/forge/src/main/java/org/openjdk/skara/forge/LabelConfiguration.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.forge;
24 |
25 | import java.nio.file.Path;
26 | import java.util.Set;
27 |
28 | public interface LabelConfiguration {
29 | Set label(Set changes);
30 | Set allowed();
31 | boolean isAllowed(String s);
32 | }
33 |
--------------------------------------------------------------------------------
/forge/src/main/java/org/openjdk/skara/forge/MemberState.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.forge;
24 |
25 | /**
26 | * Forge group member states
27 | */
28 | public enum MemberState {
29 | ACTIVE,
30 | PENDING,
31 | MISSING
32 | }
33 |
--------------------------------------------------------------------------------
/forge/src/main/java/org/openjdk/skara/forge/ReferenceChange.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.forge;
24 |
25 | import java.time.ZonedDateTime;
26 |
27 | public record ReferenceChange(String from, String to, ZonedDateTime at) {
28 | }
29 |
--------------------------------------------------------------------------------
/forge/src/main/java/org/openjdk/skara/forge/WebHook.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.forge;
24 |
25 | import java.util.List;
26 |
27 | public class WebHook {
28 |
29 | private final List updatedPullRequests;
30 |
31 | public WebHook(List updatedPullRequests) {
32 | this.updatedPullRequests = updatedPullRequests;
33 | }
34 |
35 | public List updatedPullRequests() {
36 | return updatedPullRequests;
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/forge/src/main/java/org/openjdk/skara/forge/WorkflowStatus.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.forge;
24 |
25 | public enum WorkflowStatus {
26 | NOT_CONFIGURED,
27 | ENABLED,
28 | DISABLED,
29 | }
30 |
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.vfs.watch=true
2 | org.gradle.parallel=true
3 | org.gradle.jvmargs=-Xmx2048M
4 |
--------------------------------------------------------------------------------
/gradle/plugins/.gitignore:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | #
5 | # This code is free software; you can redistribute it and/or modify it
6 | # under the terms of the GNU General Public License version 2 only, as
7 | # published by the Free Software Foundation.
8 | #
9 | # This code is distributed in the hope that it will be useful, but WITHOUT
10 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | # version 2 for more details (a copy is included in the LICENSE file that
13 | # accompanied this code).
14 | #
15 | # You should have received a copy of the GNU General Public License version
16 | # 2 along with this work; if not, write to the Free Software Foundation,
17 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | #
19 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | # or visit www.oracle.com if you need additional information or have any
21 | # questions.
22 | #
23 | .gradle
24 | .idea
25 | .project
26 | .vscode
27 | /gradle/
28 | *.iml
29 | build/
30 | out/
31 | bin/
32 |
--------------------------------------------------------------------------------
/gradle/plugins/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | plugins {
25 | id 'java-library'
26 | }
27 |
28 | dependencies {
29 | runtimeOnly subprojects.collect { owner.project(it.path) }
30 | }
31 |
32 | defaultTasks 'compileJava'
33 |
--------------------------------------------------------------------------------
/gradle/plugins/skara-images/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | plugins {
25 | id 'java-gradle-plugin'
26 | }
27 |
28 | group = 'org.openjdk.skara.gradle'
29 |
30 | gradlePlugin {
31 | plugins {
32 | simplePlugin {
33 | id = 'skara-images'
34 | implementationClass = 'org.openjdk.skara.gradle.images.ImagesPlugin'
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/gradle/plugins/skara-images/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'skara-images'
2 |
--------------------------------------------------------------------------------
/gradle/plugins/skara-module/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | plugins {
25 | id 'java-gradle-plugin'
26 | }
27 |
28 | group = 'org.openjdk.skara.gradle'
29 |
30 | gradlePlugin {
31 | plugins {
32 | simplePlugin {
33 | id = 'skara-module'
34 | implementationClass = 'org.openjdk.skara.gradle.module.ModulePlugin'
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/gradle/plugins/skara-module/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'skara-module'
2 |
--------------------------------------------------------------------------------
/gradle/plugins/skara-proxy/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | plugins {
25 | id 'java-gradle-plugin'
26 | }
27 |
28 | group = 'org.openjdk.skara.gradle'
29 |
30 | gradlePlugin {
31 | plugins {
32 | simplePlugin {
33 | id = 'skara-proxy'
34 | implementationClass = 'org.openjdk.skara.gradle.proxy.ProxyPlugin'
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/gradle/plugins/skara-proxy/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'skara-proxy'
2 |
--------------------------------------------------------------------------------
/gradle/plugins/skara-reproduce/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | plugins {
25 | id 'java-gradle-plugin'
26 | }
27 |
28 | group = 'org.openjdk.skara.gradle'
29 |
30 | gradlePlugin {
31 | plugins {
32 | simplePlugin {
33 | id = 'skara-reproduce'
34 | implementationClass = 'org.openjdk.skara.gradle.reproduce.ReproducePlugin'
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/gradle/plugins/skara-reproduce/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'skara-reproduce'
2 |
--------------------------------------------------------------------------------
/gradle/plugins/skara-version/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | plugins {
25 | id 'java-gradle-plugin'
26 | }
27 |
28 | group = 'org.openjdk.skara.gradle'
29 |
30 | gradlePlugin {
31 | plugins {
32 | simplePlugin {
33 | id = 'skara-version'
34 | implementationClass = 'org.openjdk.skara.gradle.version.VersionPlugin'
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/gradle/plugins/skara-version/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'skara-version'
2 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
2 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
3 | #
4 | # This code is free software; you can redistribute it and/or modify it
5 | # under the terms of the GNU General Public License version 2 only, as
6 | # published by the Free Software Foundation.
7 | #
8 | # This code is distributed in the hope that it will be useful, but WITHOUT
9 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
11 | # version 2 for more details (a copy is included in the LICENSE file that
12 | # accompanied this code).
13 | #
14 | # You should have received a copy of the GNU General Public License version
15 | # 2 along with this work; if not, write to the Free Software Foundation,
16 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
17 | #
18 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
19 | # or visit www.oracle.com if you need additional information or have any
20 | # questions.
21 |
22 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
23 | distributionSha256Sum=9d926787066a081739e8200858338b4a69e837c3a821a33aca9db09dd4a41026
24 |
--------------------------------------------------------------------------------
/host/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.host'
26 | test {
27 | requires 'org.openjdk.skara.test'
28 | requires 'org.junit.jupiter.api'
29 | opens 'org.openjdk.skara.host' to 'org.junit.platform.commons'
30 | }
31 | }
32 |
33 | dependencies {
34 | testImplementation project(':test')
35 | }
36 |
37 | publishing {
38 | publications {
39 | host(MavenPublication) {
40 | from components.java
41 | }
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/host/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.host {
24 | exports org.openjdk.skara.host;
25 | }
26 |
--------------------------------------------------------------------------------
/host/src/main/java/org/openjdk/skara/host/Credential.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.host;
24 |
25 | public class Credential {
26 | private final String username;
27 | private final String password;
28 |
29 | public Credential(String username, String password) {
30 | this.username = username;
31 | this.password = password;
32 | }
33 |
34 | public String password() {
35 | return password;
36 | }
37 |
38 | public String username() {
39 | return username;
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/ini/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.ini'
26 | test {
27 | requires 'org.junit.jupiter.api'
28 | opens 'org.openjdk.skara.ini' to 'org.junit.platform.commons'
29 | }
30 | }
31 |
32 | publishing {
33 | publications {
34 | ini(MavenPublication) {
35 | from components.java
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/ini/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.ini {
24 | exports org.openjdk.skara.ini;
25 | }
26 |
--------------------------------------------------------------------------------
/issuetracker/src/main/java/org/openjdk/skara/issuetracker/IssueLinkBuilder.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, 2023, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.issuetracker;
24 |
25 | public class IssueLinkBuilder {
26 | private final IssueTrackerIssue linked;
27 | private final String relationship;
28 |
29 | IssueLinkBuilder(IssueTrackerIssue issue, String relationship) {
30 | this.linked = issue;
31 | this.relationship = relationship;
32 | }
33 |
34 | public Link build() {
35 | return new Link(null, null, relationship, null, null, null, null, null, false, linked);
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/issuetracker/src/main/java/org/openjdk/skara/issuetracker/jira/JiraLinkType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.issuetracker.jira;
24 |
25 | public class JiraLinkType {
26 | private final String name;
27 | private final String inward;
28 | private final String outward;
29 |
30 | JiraLinkType(String name, String inward, String outward) {
31 | this.name = name;
32 | this.inward = inward;
33 | this.outward = outward;
34 | }
35 |
36 | String name() {
37 | return name;
38 | }
39 |
40 | String inward() {
41 | return inward;
42 | }
43 |
44 | String outward() {
45 | return outward;
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/jbs/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.jbs {
24 | requires java.net.http;
25 | requires java.logging;
26 |
27 | requires org.openjdk.skara.issuetracker;
28 | requires org.openjdk.skara.json;
29 |
30 | exports org.openjdk.skara.jbs;
31 | }
32 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.jcheck {
24 | requires transitive org.openjdk.skara.vcs;
25 | requires transitive org.openjdk.skara.census;
26 | requires org.openjdk.skara.ini;
27 | requires java.logging;
28 |
29 | exports org.openjdk.skara.jcheck;
30 | }
31 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/AuthorEmailIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public class AuthorEmailIssue extends CommitIssue {
26 | AuthorEmailIssue(CommitIssue.Metadata metadata) {
27 | super(metadata);
28 | }
29 |
30 | @Override
31 | public void accept(IssueVisitor v) {
32 | v.visit(this);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/AuthorNameIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public class AuthorNameIssue extends CommitIssue {
26 | AuthorNameIssue(CommitIssue.Metadata metadata) {
27 | super(metadata);
28 | }
29 |
30 | @Override
31 | public void accept(IssueVisitor v) {
32 | v.visit(this);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/BinaryIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | import java.nio.file.Path;
26 |
27 | public class BinaryIssue extends CommitIssue {
28 | private final Path path;
29 |
30 | BinaryIssue(Path path, CommitIssue.Metadata metadata) {
31 | super(metadata);
32 | this.path = path;
33 | }
34 |
35 | public Path path() {
36 | return path;
37 | }
38 |
39 | @Override
40 | public void accept(IssueVisitor v) {
41 | v.visit(this);
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/BranchIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | import org.openjdk.skara.vcs.Branch;
26 |
27 | public class BranchIssue extends Issue {
28 | private final Branch branch;
29 |
30 | BranchIssue(Branch branch, Check check) {
31 | super(Severity.ERROR, check);
32 | this.branch = branch;
33 | }
34 |
35 | public Branch branch() {
36 | return this.branch;
37 | }
38 |
39 | @Override
40 | public void accept(IssueVisitor v) {
41 | v.visit(this);
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/Check.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public interface Check {
26 | String name();
27 | String description();
28 | }
29 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/CommitCheck.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | import org.openjdk.skara.census.Census;
26 | import org.openjdk.skara.vcs.openjdk.CommitMessage;
27 | import org.openjdk.skara.vcs.Commit;
28 |
29 | import java.util.Arrays;
30 | import java.util.Iterator;
31 |
32 | abstract class CommitCheck implements Check {
33 | abstract Iterator check(Commit commit, CommitMessage message, JCheckConfiguration conf, Census census);
34 |
35 | protected Iterator iterator(Issue... issues) {
36 | return Arrays.asList(issues).iterator();
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/CommitterEmailIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public class CommitterEmailIssue extends CommitIssue {
26 | private final String expectedDomain;
27 |
28 | CommitterEmailIssue(String expectedDomain, CommitIssue.Metadata metadata) {
29 | super(metadata);
30 | this.expectedDomain = expectedDomain;
31 | }
32 |
33 | public String expectedDomain() {
34 | return expectedDomain;
35 | }
36 |
37 | @Override
38 | public void accept(IssueVisitor v) {
39 | v.visit(this);
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/CommitterIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | import org.openjdk.skara.census.Project;
26 |
27 | public class CommitterIssue extends CommitIssue {
28 | private final Project project;
29 |
30 | public CommitterIssue(Project project, CommitIssue.Metadata metadata) {
31 | super(metadata);
32 | this.project = project;
33 | }
34 |
35 | public Project project() {
36 | return project;
37 | }
38 |
39 | @Override
40 | public void accept(IssueVisitor v) {
41 | v.visit(this);
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/CommitterNameIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public class CommitterNameIssue extends CommitIssue {
26 | CommitterNameIssue(CommitIssue.Metadata metadata) {
27 | super(metadata);
28 | }
29 |
30 | @Override
31 | public void accept(IssueVisitor v) {
32 | v.visit(this);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/ExecutableIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | import java.nio.file.Path;
26 |
27 | public class ExecutableIssue extends CommitIssue {
28 | private final Path path;
29 |
30 | ExecutableIssue(Path path, CommitIssue.Metadata metadata) {
31 | super(metadata);
32 | this.path = path;
33 | }
34 |
35 | public Path path() {
36 | return path;
37 | }
38 |
39 | @Override
40 | public void accept(IssueVisitor v) {
41 | v.visit(this);
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/Issue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public abstract class Issue {
26 | private final Severity severity;
27 | private final Check check;
28 |
29 | Issue(Severity severity, Check check) {
30 | this.severity = severity;
31 | this.check = check;
32 | }
33 |
34 | public abstract void accept(IssueVisitor v);
35 |
36 | public Severity severity() {
37 | return severity;
38 | }
39 |
40 | public Check check() {
41 | return check;
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/IssuesIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public class IssuesIssue extends CommitIssue {
26 | IssuesIssue(CommitIssue.Metadata metadata) {
27 | super(metadata);
28 | }
29 |
30 | @Override
31 | public void accept(IssueVisitor visitor) {
32 | visitor.visit(this);
33 | }
34 | }
35 |
36 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/MergeMessageIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public class MergeMessageIssue extends CommitIssue {
26 | private final String expected;
27 |
28 | MergeMessageIssue(String expected, CommitIssue.Metadata metadata) {
29 | super(metadata);
30 | this.expected = expected;
31 | }
32 |
33 | public String expected() {
34 | return expected;
35 | }
36 |
37 | @Override
38 | public void accept(IssueVisitor v) {
39 | v.visit(this);
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/MessageIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public class MessageIssue extends CommitIssue {
26 | MessageIssue(CommitIssue.Metadata metadata) {
27 | super(metadata);
28 | }
29 |
30 | @Override
31 | public void accept(IssueVisitor visitor) {
32 | visitor.visit(this);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/RepositoryCheck.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | import org.openjdk.skara.vcs.ReadOnlyRepository;
26 |
27 | import java.io.IOException;
28 | import java.util.Arrays;
29 | import java.util.Iterator;
30 |
31 | abstract class RepositoryCheck implements Check {
32 | abstract Iterator check(ReadOnlyRepository repository);
33 |
34 | protected Iterator iterator(Issue... issues) {
35 | return Arrays.asList(issues).iterator();
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/SelfReviewIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public class SelfReviewIssue extends CommitIssue {
26 | SelfReviewIssue(CommitIssue.Metadata metadata) {
27 | super(metadata);
28 | }
29 |
30 | @Override
31 | public void accept(IssueVisitor v) {
32 | v.visit(this);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/Severity.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | public enum Severity {
26 | ERROR,
27 | WARNING;
28 |
29 | @Override
30 | public String toString() {
31 | switch (this) {
32 | case ERROR:
33 | return "error";
34 | case WARNING:
35 | return "warning";
36 | default:
37 | throw new IllegalArgumentException();
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/SymlinkIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | import java.nio.file.Path;
26 |
27 | public class SymlinkIssue extends CommitIssue {
28 | private final Path path;
29 |
30 | SymlinkIssue(Path path, CommitIssue.Metadata metadata) {
31 | super(metadata);
32 | this.path = path;
33 | }
34 |
35 | public Path path() {
36 | return path;
37 | }
38 |
39 | @Override
40 | public void accept(IssueVisitor v) {
41 | v.visit(this);
42 | }
43 | }
44 |
45 |
--------------------------------------------------------------------------------
/jcheck/src/main/java/org/openjdk/skara/jcheck/TagIssue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.jcheck;
24 |
25 | import org.openjdk.skara.vcs.Tag;
26 |
27 | public class TagIssue extends Issue {
28 | private final Tag tag;
29 |
30 | public TagIssue(Tag tag, Check check) {
31 | super(Severity.ERROR, check);
32 |
33 | this.tag = tag;
34 | }
35 |
36 | public Tag tag() {
37 | return tag;
38 | }
39 |
40 | @Override
41 | public void accept(IssueVisitor v) {
42 | v.visit(this);
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/json/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.json'
26 | test {
27 | requires 'org.junit.jupiter.api'
28 | opens 'org.openjdk.skara.json' to 'org.junit.platform.commons'
29 | }
30 | }
31 |
32 | publishing {
33 | publications {
34 | json(MavenPublication) {
35 | from components.java
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/json/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.json {
24 | exports org.openjdk.skara.json;
25 | }
26 |
--------------------------------------------------------------------------------
/json/src/main/java/org/openjdk/skara/json/JWCC.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.json;
24 |
25 | /**
26 | * JWCC is JSON With Commas and Comments. In addition to supporting all of JSON
27 | * JWCC also supports trailing commas and comments. Comments can be either
28 | * until single-line or multi-line.
29 | *
30 | * Comments are stripped and are not present in the parsed result.
31 | */
32 | public class JWCC {
33 | public static JSONValue parse(String s) {
34 | return new JSONParser(true, true).parse(s);
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/mailinglist/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.mailinglist'
26 | test {
27 | requires 'org.openjdk.skara.test'
28 | requires 'org.junit.jupiter.api'
29 | opens 'org.openjdk.skara.mailinglist' to 'org.junit.platform.commons'
30 | }
31 | }
32 |
33 | dependencies {
34 | implementation project(':network')
35 | implementation project(':vcs')
36 | implementation project(':email')
37 | implementation project(':metrics')
38 |
39 | testImplementation project(':test')
40 | }
41 |
--------------------------------------------------------------------------------
/mailinglist/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.mailinglist {
24 | requires transitive org.openjdk.skara.metrics;
25 | requires java.net.http;
26 | requires java.logging;
27 | requires org.openjdk.skara.network;
28 | requires org.openjdk.skara.vcs;
29 | requires org.openjdk.skara.email;
30 |
31 | exports org.openjdk.skara.mailinglist;
32 | }
33 |
--------------------------------------------------------------------------------
/mailinglist/src/main/java/org/openjdk/skara/mailinglist/MailingListReader.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.mailinglist;
24 |
25 | import java.time.Duration;
26 | import java.util.List;
27 |
28 | public interface MailingListReader {
29 | List conversations(Duration maxAge);
30 | }
31 |
--------------------------------------------------------------------------------
/mailinglist/src/main/java/org/openjdk/skara/mailinglist/MailingListServer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.mailinglist;
24 |
25 | import org.openjdk.skara.email.Email;
26 |
27 | public interface MailingListServer {
28 | MailingListReader getListReader(String... listNames);
29 | void post(Email email);
30 | }
31 |
--------------------------------------------------------------------------------
/metrics/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.metrics'
26 | test {
27 | requires 'org.junit.jupiter.api'
28 | opens 'org.openjdk.skara.metrics' to 'org.junit.platform.commons'
29 | }
30 | }
31 |
32 | publishing {
33 | publications {
34 | metrics(MavenPublication) {
35 | from components.java
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/metrics/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.metrics {
24 | requires java.management;
25 | requires jdk.management;
26 | exports org.openjdk.skara.metrics;
27 | }
28 |
29 |
--------------------------------------------------------------------------------
/metrics/src/main/java/org/openjdk/skara/metrics/Collector.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.metrics;
24 |
25 | import java.util.List;
26 |
27 | public interface Collector {
28 | List collect();
29 | }
30 |
--------------------------------------------------------------------------------
/metrics/src/main/java/org/openjdk/skara/metrics/Exporter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.metrics;
24 |
25 | import java.util.List;
26 |
27 | public interface Exporter {
28 | String export(List metrics);
29 | }
30 |
--------------------------------------------------------------------------------
/network/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.network'
26 | test {
27 | requires 'org.openjdk.skara.test'
28 | requires 'org.junit.jupiter.api'
29 | requires 'jdk.httpserver'
30 | opens 'org.openjdk.skara.network' to 'org.junit.platform.commons'
31 | }
32 | }
33 |
34 | dependencies {
35 | implementation project(':json')
36 | implementation project(':metrics')
37 | testImplementation project(':test')
38 | }
39 |
40 | publishing {
41 | publications {
42 | network(MavenPublication) {
43 | from components.java
44 | }
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/network/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.network {
24 | requires java.logging;
25 | requires org.openjdk.skara.json;
26 | requires org.openjdk.skara.metrics;
27 | requires java.net.http;
28 |
29 | exports org.openjdk.skara.network;
30 | }
31 |
--------------------------------------------------------------------------------
/process/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.process'
26 | test {
27 | requires 'org.junit.jupiter.api'
28 | opens 'org.openjdk.skara.process' to 'org.junit.platform.commons'
29 | }
30 | }
31 |
32 | publishing {
33 | publications {
34 | process(MavenPublication) {
35 | from components.java
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/process/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.process {
24 | requires java.logging;
25 |
26 | exports org.openjdk.skara.process;
27 | }
28 |
--------------------------------------------------------------------------------
/proxy/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.proxy'
26 | test {
27 | requires 'org.junit.jupiter.api'
28 | opens 'org.openjdk.skara.args' to 'org.junit.platform.commons'
29 | }
30 | }
31 |
32 | publishing {
33 | publications {
34 | proxy(MavenPublication) {
35 | from components.java
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/proxy/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.proxy {
24 | requires java.logging;
25 | exports org.openjdk.skara.proxy;
26 | }
27 |
--------------------------------------------------------------------------------
/storage/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.storage {
24 | requires org.openjdk.skara.network;
25 | requires org.openjdk.skara.host;
26 | requires org.openjdk.skara.forge;
27 | requires org.openjdk.skara.vcs;
28 | requires java.logging;
29 |
30 | exports org.openjdk.skara.storage;
31 | }
32 |
--------------------------------------------------------------------------------
/storage/src/main/java/org/openjdk/skara/storage/StorageDeserializer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.storage;
24 |
25 | import java.util.Set;
26 |
27 | public interface StorageDeserializer {
28 | Set deserialize(String serialized);
29 | }
30 |
--------------------------------------------------------------------------------
/storage/src/main/java/org/openjdk/skara/storage/StorageSerializer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.storage;
24 |
25 | import java.util.*;
26 |
27 | public interface StorageSerializer {
28 | String serialize(Collection added, Set existing);
29 | }
30 |
--------------------------------------------------------------------------------
/test/src/main/java/org/openjdk/skara/test/TestableRepository.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.test;
24 |
25 | import org.openjdk.skara.vcs.Repository;
26 | import org.openjdk.skara.vcs.VCS;
27 |
28 | import java.io.IOException;
29 | import java.nio.file.Path;
30 |
31 | public class TestableRepository {
32 | public static Repository init(Path p, VCS vcs) throws IOException {
33 | Repository.ignoreConfiguration();
34 | return Repository.init(p, vcs);
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/vcs/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.vcs {
24 | requires java.logging;
25 | requires org.openjdk.skara.process;
26 | requires org.openjdk.skara.encoding;
27 |
28 | exports org.openjdk.skara.vcs;
29 | exports org.openjdk.skara.vcs.git;
30 | exports org.openjdk.skara.vcs.openjdk;
31 | exports org.openjdk.skara.vcs.openjdk.convert;
32 | }
33 |
--------------------------------------------------------------------------------
/vcs/src/main/java/org/openjdk/skara/vcs/openjdk/CommitMessageFormatter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.vcs.openjdk;
24 |
25 | import java.util.List;
26 | import java.util.stream.Collectors;
27 |
28 | import org.openjdk.skara.vcs.Author;
29 |
30 | @FunctionalInterface
31 | public interface CommitMessageFormatter {
32 | List format(CommitMessage message);
33 | }
34 |
--------------------------------------------------------------------------------
/vcs/src/main/java/org/openjdk/skara/vcs/openjdk/CommitMessageParser.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.vcs.openjdk;
24 |
25 | import org.openjdk.skara.vcs.Commit;
26 | import org.openjdk.skara.vcs.CommitMetadata;
27 |
28 | import java.util.List;
29 |
30 | @FunctionalInterface
31 | public interface CommitMessageParser {
32 | CommitMessage parse(List lines);
33 | default CommitMessage parse(Commit c) {
34 | return parse(c.message());
35 | }
36 | default CommitMessage parse(CommitMetadata metadata) {
37 | return parse(metadata.message());
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/vcs/src/main/java/org/openjdk/skara/vcs/openjdk/convert/Converter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.vcs.openjdk.convert;
24 |
25 | import org.openjdk.skara.vcs.Repository;
26 | import org.openjdk.skara.vcs.ReadOnlyRepository;
27 |
28 | import java.io.IOException;
29 | import java.net.URI;
30 | import java.util.List;
31 |
32 | public interface Converter {
33 | List convert(ReadOnlyRepository from, Repository to) throws IOException;
34 | List pull(Repository gitRepo, URI source, Repository hgRepo, List oldMarks) throws IOException;
35 | }
36 |
--------------------------------------------------------------------------------
/version/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.version'
26 | }
27 |
28 | jar {
29 | manifest {
30 | attributes("Implementation-Title": "org.openjdk.skara.version", "Implementation-Version": archiveVersion)
31 | }
32 | }
33 |
34 | publishing {
35 | publications {
36 | version(MavenPublication) {
37 | from components.java
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/version/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.version {
24 | exports org.openjdk.skara.version;
25 | }
26 |
--------------------------------------------------------------------------------
/webrev/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.webrev {
24 | requires org.openjdk.skara.vcs;
25 | requires org.openjdk.skara.json;
26 | requires java.net.http;
27 | requires java.logging;
28 |
29 | exports org.openjdk.skara.webrev;
30 | }
31 |
--------------------------------------------------------------------------------
/webrev/src/main/java/org/openjdk/skara/webrev/DiffTooLargeException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.webrev;
24 |
25 | public class DiffTooLargeException extends Exception {
26 | public DiffTooLargeException() {
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/webrev/src/main/java/org/openjdk/skara/webrev/FileView.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.webrev;
24 |
25 | interface FileView extends View {
26 | Stats stats();
27 | }
28 |
29 |
30 |
--------------------------------------------------------------------------------
/webrev/src/main/java/org/openjdk/skara/webrev/HTML.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.webrev;
24 |
25 | class HTML {
26 | public static String escape(String s) {
27 | return s.replace("&", "&")
28 | .replace("<", "<")
29 | .replace(">", ">")
30 | .replace("\"", """)
31 | .replace("'", "'");
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/webrev/src/main/java/org/openjdk/skara/webrev/Navigation.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.webrev;
24 |
25 | import java.nio.file.Path;
26 |
27 | class Navigation {
28 | final Path previous;
29 | final Path next;
30 |
31 | Navigation(Path previous, Path next) {
32 | this.previous = previous;
33 | this.next = next;
34 | }
35 |
36 | Path previous() {
37 | return previous;
38 | }
39 |
40 | Path next() {
41 | return next;
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/webrev/src/main/java/org/openjdk/skara/webrev/View.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.webrev;
24 |
25 | import java.io.*;
26 |
27 | interface View {
28 | void render(Writer w) throws IOException;
29 | }
30 |
--------------------------------------------------------------------------------
/webrev/src/main/resources/nanoduke.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openjdk/skara/d27f01f9cdf0a06a0d1a20b05165a6ded8e48dbb/webrev/src/main/resources/nanoduke.ico
--------------------------------------------------------------------------------
/webrev/src/test/java/org/openjdk/skara/webrev/HTMLTests.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | package org.openjdk.skara.webrev;
24 |
25 | import org.junit.jupiter.api.Test;
26 |
27 | import static org.junit.jupiter.api.Assertions.assertEquals;
28 |
29 | public class HTMLTests {
30 | @Test
31 | void testSingleQuoteEscape() {
32 | var text = "'7";
33 | var html = HTML.escape(text);
34 | assertEquals("'7", html);
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/xml/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 |
24 | module {
25 | name = 'org.openjdk.skara.xml'
26 | }
27 |
28 | publishing {
29 | publications {
30 | xml(MavenPublication) {
31 | from components.java
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/xml/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 | *
5 | * This code is free software; you can redistribute it and/or modify it
6 | * under the terms of the GNU General Public License version 2 only, as
7 | * published by the Free Software Foundation.
8 | *
9 | * This code is distributed in the hope that it will be useful, but WITHOUT
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 | * version 2 for more details (a copy is included in the LICENSE file that
13 | * accompanied this code).
14 | *
15 | * You should have received a copy of the GNU General Public License version
16 | * 2 along with this work; if not, write to the Free Software Foundation,
17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 | *
19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 | * or visit www.oracle.com if you need additional information or have any
21 | * questions.
22 | */
23 | module org.openjdk.skara.xml {
24 | requires java.xml;
25 | exports org.openjdk.skara.xml;
26 | }
27 |
--------------------------------------------------------------------------------