├── .github
└── workflows
│ ├── build-win.yaml
│ ├── build.yaml
│ ├── dependencies.yaml
│ └── deploy-snapshots.yaml
├── .gitignore
├── .mvn
└── settings.xml
├── CONTRIBUTING.md
├── Jenkinsfile
├── LICENSE.md
├── README.md
├── bedrock-bom
└── pom.xml
├── bedrock-coherence
├── 12.2.1
│ ├── coherence-12.2.1-testing-support
│ │ ├── pom.xml
│ │ └── src
│ │ │ ├── main
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── junit
│ │ │ │ ├── CoherenceClusterOrchestration.java
│ │ │ │ ├── ExtendClient.java
│ │ │ │ └── StorageDisabledMember.java
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── oracle
│ │ │ └── bedrock
│ │ │ └── junit
│ │ │ ├── CoherenceClusterResourceTest.java
│ │ │ └── SingleMemberCoherenceClusterResourceTest.java
│ ├── coherence-12.2.1-tests
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── runtime
│ │ │ │ └── coherence
│ │ │ │ ├── AbstractCoherenceCacheServerTest.java
│ │ │ │ ├── AbstractCoherenceClusterBuilderTest.java
│ │ │ │ ├── ContainerBasedCoherenceCacheServerIT.java
│ │ │ │ ├── ContainerBasedCoherenceClusterBuilderIT.java
│ │ │ │ ├── CustomServer.java
│ │ │ │ ├── GetProcessor.java
│ │ │ │ ├── LocalCoherenceCacheServerIT.java
│ │ │ │ └── LocalCoherenceClusterBuilderIT.java
│ │ │ └── resources
│ │ │ ├── test-autostart-services-cache-config.xml
│ │ │ ├── test-cache-config.xml
│ │ │ ├── test-client-config.xml
│ │ │ ├── test-extend-proxy-config.xml
│ │ │ └── test-operational-override.xml
│ ├── coherence-12.2.1
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── oracle
│ │ │ └── bedrock
│ │ │ └── runtime
│ │ │ └── coherence
│ │ │ ├── AbstractCoherenceClusterMember.java
│ │ │ ├── CoherenceCacheServer.java
│ │ │ ├── CoherenceCluster.java
│ │ │ ├── CoherenceClusterMember.java
│ │ │ ├── CoherenceNamedCache.java
│ │ │ └── options
│ │ │ └── WellKnownAddress.java
│ └── pom.xml
├── 14.1.1
│ ├── coherence-14.1.1-testing-support-tests-junit4
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── junit
│ │ │ │ ├── CoherenceClusterResourceTest.java
│ │ │ │ └── SingleMemberCoherenceClusterResourceTest.java
│ │ │ └── resources
│ │ │ └── client-cache-config.xml
│ ├── coherence-14.1.1-testing-support-tests-junit5
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── junit
│ │ │ │ └── CoherenceClusterExtensionTest.java
│ │ │ └── resources
│ │ │ └── client-cache-config.xml
│ ├── coherence-14.1.1-testing-support
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── oracle
│ │ │ └── bedrock
│ │ │ ├── junit
│ │ │ ├── CoherenceClusterExtension.java
│ │ │ ├── CoherenceClusterResource.java
│ │ │ ├── ExtendClient.java
│ │ │ ├── SessionBuilder.java
│ │ │ ├── SessionBuilders.java
│ │ │ ├── SleepingApplication.java
│ │ │ └── StorageDisabledMember.java
│ │ │ └── matchers
│ │ │ └── PartitionSetMatcher.java
│ ├── coherence-14.1.1
│ │ ├── pom.xml
│ │ └── src
│ │ │ ├── main
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── runtime
│ │ │ │ └── coherence
│ │ │ │ ├── AbstractCoherenceClusterMember.java
│ │ │ │ ├── CoherenceCacheServer.java
│ │ │ │ ├── CoherenceCluster.java
│ │ │ │ ├── CoherenceClusterBuilder.java
│ │ │ │ ├── CoherenceClusterMember.java
│ │ │ │ ├── CoherenceNamedCache.java
│ │ │ │ ├── JMXManagementMode.java
│ │ │ │ ├── ServiceStatus.java
│ │ │ │ ├── callables
│ │ │ │ ├── GetAutoStartServiceNames.java
│ │ │ │ ├── GetClusterMemberUIDs.java
│ │ │ │ ├── GetClusterName.java
│ │ │ │ ├── GetClusterSize.java
│ │ │ │ ├── GetLocalMemberId.java
│ │ │ │ ├── GetLocalMemberRoleName.java
│ │ │ │ ├── GetLocalMemberSiteName.java
│ │ │ │ ├── GetLocalMemberUID.java
│ │ │ │ ├── GetServiceStatus.java
│ │ │ │ ├── IsServiceRunning.java
│ │ │ │ └── IsServiceStorageEnabled.java
│ │ │ │ └── options
│ │ │ │ ├── CacheConfig.java
│ │ │ │ ├── ClusterAddress.java
│ │ │ │ ├── ClusterName.java
│ │ │ │ ├── ClusterPort.java
│ │ │ │ ├── Clustering.java
│ │ │ │ ├── LocalHost.java
│ │ │ │ ├── LocalStorage.java
│ │ │ │ ├── Logging.java
│ │ │ │ ├── MachineName.java
│ │ │ │ ├── Multicast.java
│ │ │ │ ├── OperationalOverride.java
│ │ │ │ ├── Pof.java
│ │ │ │ ├── RoleName.java
│ │ │ │ ├── SiteName.java
│ │ │ │ └── WellKnownAddress.java
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── runtime
│ │ │ │ └── coherence
│ │ │ │ ├── AbstractCoherenceCacheServerTest.java
│ │ │ │ ├── AbstractCoherenceClusterBuilderTest.java
│ │ │ │ ├── ContainerBasedCoherenceCacheServerIT.java
│ │ │ │ ├── ContainerBasedCoherenceClusterBuilderIT.java
│ │ │ │ ├── CustomServer.java
│ │ │ │ ├── GetProcessor.java
│ │ │ │ ├── LocalCoherenceCacheServerIT.java
│ │ │ │ └── LocalCoherenceClusterBuilderIT.java
│ │ │ └── resources
│ │ │ ├── test-autostart-services-cache-config.xml
│ │ │ ├── test-cache-config.xml
│ │ │ ├── test-client-config.xml
│ │ │ ├── test-extend-proxy-config.xml
│ │ │ └── test-operational-override.xml
│ └── pom.xml
├── 21.06
│ ├── coherence-21.06-testing-support-tests-junit4
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── junit
│ │ │ │ ├── CoherenceClusterResourceTest.java
│ │ │ │ └── SingleMemberCoherenceClusterResourceTest.java
│ │ │ └── resources
│ │ │ └── client-cache-config.xml
│ ├── coherence-21.06-testing-support-tests-junit5
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── junit
│ │ │ │ └── CoherenceClusterExtensionTest.java
│ │ │ └── resources
│ │ │ └── client-cache-config.xml
│ ├── coherence-21.06-testing-support
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── oracle
│ │ │ └── bedrock
│ │ │ ├── junit
│ │ │ ├── CoherenceClusterExtension.java
│ │ │ ├── CoherenceClusterResource.java
│ │ │ ├── ExtendClient.java
│ │ │ ├── SessionBuilder.java
│ │ │ ├── SessionBuilders.java
│ │ │ ├── SleepingApplication.java
│ │ │ └── StorageDisabledMember.java
│ │ │ └── matchers
│ │ │ └── PartitionSetMatcher.java
│ ├── coherence-21.06
│ │ ├── pom.xml
│ │ └── src
│ │ │ ├── main
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── runtime
│ │ │ │ └── coherence
│ │ │ │ ├── AbstractCoherenceClusterMember.java
│ │ │ │ ├── CoherenceCacheServer.java
│ │ │ │ ├── CoherenceCluster.java
│ │ │ │ ├── CoherenceClusterBuilder.java
│ │ │ │ ├── CoherenceClusterMember.java
│ │ │ │ ├── CoherenceNamedCache.java
│ │ │ │ ├── CoherenceSession.java
│ │ │ │ ├── JMXManagementMode.java
│ │ │ │ ├── ServiceStatus.java
│ │ │ │ ├── callables
│ │ │ │ ├── GetAutoStartServiceNames.java
│ │ │ │ ├── GetClusterMemberUIDs.java
│ │ │ │ ├── GetClusterName.java
│ │ │ │ ├── GetClusterSize.java
│ │ │ │ ├── GetLocalMemberId.java
│ │ │ │ ├── GetLocalMemberRoleName.java
│ │ │ │ ├── GetLocalMemberSiteName.java
│ │ │ │ ├── GetLocalMemberUID.java
│ │ │ │ ├── GetServiceStatus.java
│ │ │ │ ├── GetSession.java
│ │ │ │ ├── GetSessionCache.java
│ │ │ │ ├── IsCoherenceRunning.java
│ │ │ │ ├── IsServiceRunning.java
│ │ │ │ ├── IsServiceStorageEnabled.java
│ │ │ │ └── SessionExists.java
│ │ │ │ └── options
│ │ │ │ ├── CacheConfig.java
│ │ │ │ ├── ClusterAddress.java
│ │ │ │ ├── ClusterName.java
│ │ │ │ ├── ClusterPort.java
│ │ │ │ ├── Clustering.java
│ │ │ │ ├── LocalHost.java
│ │ │ │ ├── LocalStorage.java
│ │ │ │ ├── Logging.java
│ │ │ │ ├── MachineName.java
│ │ │ │ ├── Multicast.java
│ │ │ │ ├── OperationalOverride.java
│ │ │ │ ├── Pof.java
│ │ │ │ ├── RoleName.java
│ │ │ │ ├── SiteName.java
│ │ │ │ └── WellKnownAddress.java
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── runtime
│ │ │ │ └── coherence
│ │ │ │ ├── AbstractCoherenceCacheServerTest.java
│ │ │ │ ├── AbstractCoherenceClusterBuilderTest.java
│ │ │ │ ├── CoherenceSessionIT.java
│ │ │ │ ├── ContainerBasedCoherenceCacheServerIT.java
│ │ │ │ ├── ContainerBasedCoherenceClusterBuilderIT.java
│ │ │ │ ├── CustomServer.java
│ │ │ │ ├── GetProcessor.java
│ │ │ │ ├── LocalCoherenceCacheServerIT.java
│ │ │ │ └── LocalCoherenceClusterBuilderIT.java
│ │ │ └── resources
│ │ │ ├── test-autostart-services-cache-config.xml
│ │ │ ├── test-cache-config.xml
│ │ │ ├── test-client-config.xml
│ │ │ ├── test-extend-proxy-config.xml
│ │ │ └── test-operational-override.xml
│ └── pom.xml
├── 3.7.1
│ ├── coherence-3.7.1-testing-support
│ │ ├── pom.xml
│ │ └── src
│ │ │ ├── main
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ ├── junit
│ │ │ │ ├── CoherenceClusterOrchestration.java
│ │ │ │ ├── CoherenceClusterResource.java
│ │ │ │ ├── ExtendClient.java
│ │ │ │ ├── SessionBuilder.java
│ │ │ │ ├── SessionBuilders.java
│ │ │ │ ├── SleepingApplication.java
│ │ │ │ └── StorageDisabledMember.java
│ │ │ │ └── matchers
│ │ │ │ └── PartitionSetMatcher.java
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── junit
│ │ │ │ ├── CoherenceClusterResourceTest.java
│ │ │ │ └── SingleMemberCoherenceClusterResourceTest.java
│ │ │ └── resources
│ │ │ └── proxy-cache-config.xml
│ ├── coherence-3.7.1-tests
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── runtime
│ │ │ │ └── coherence
│ │ │ │ ├── AbstractCoherenceCacheServerTest.java
│ │ │ │ ├── AbstractCoherenceClusterBuilderTest.java
│ │ │ │ ├── ContainerBasedCoherenceCacheServerTest.java
│ │ │ │ ├── ContainerBasedCoherenceClusterBuilderTest.java
│ │ │ │ ├── CustomServer.java
│ │ │ │ ├── GetProcessor.java
│ │ │ │ ├── LocalCoherenceCacheServerTest.java
│ │ │ │ └── LocalCoherenceClusterBuilderTest.java
│ │ │ └── resources
│ │ │ ├── test-cache-config.xml
│ │ │ ├── test-client-config.xml
│ │ │ ├── test-extend-proxy-config.xml
│ │ │ └── test-operational-override.xml
│ ├── coherence-3.7.1
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── oracle
│ │ │ └── bedrock
│ │ │ └── runtime
│ │ │ └── coherence
│ │ │ ├── AbstractCoherenceClusterMember.java
│ │ │ ├── CoherenceCacheServer.java
│ │ │ ├── CoherenceCluster.java
│ │ │ ├── CoherenceClusterBuilder.java
│ │ │ ├── CoherenceClusterMember.java
│ │ │ ├── CoherenceNamedCache.java
│ │ │ ├── JMXManagementMode.java
│ │ │ ├── ServiceStatus.java
│ │ │ ├── callables
│ │ │ ├── GetAutoStartServiceNames.java
│ │ │ ├── GetClusterMemberUIDs.java
│ │ │ ├── GetClusterName.java
│ │ │ ├── GetClusterSize.java
│ │ │ ├── GetLocalMemberId.java
│ │ │ ├── GetLocalMemberRoleName.java
│ │ │ ├── GetLocalMemberSiteName.java
│ │ │ ├── GetLocalMemberUID.java
│ │ │ ├── GetServiceStatus.java
│ │ │ ├── IsServiceRunning.java
│ │ │ └── IsServiceStorageEnabled.java
│ │ │ └── options
│ │ │ ├── CacheConfig.java
│ │ │ ├── ClusterAddress.java
│ │ │ ├── ClusterName.java
│ │ │ ├── ClusterPort.java
│ │ │ ├── Clustering.java
│ │ │ ├── LocalHost.java
│ │ │ ├── LocalStorage.java
│ │ │ ├── Logging.java
│ │ │ ├── MachineName.java
│ │ │ ├── Multicast.java
│ │ │ ├── OperationalOverride.java
│ │ │ ├── Pof.java
│ │ │ ├── RoleName.java
│ │ │ ├── SiteName.java
│ │ │ └── WellKnownAddress.java
│ └── pom.xml
└── pom.xml
├── bedrock-core
├── pom.xml
└── src
│ ├── main
│ └── java
│ │ ├── com
│ │ └── oracle
│ │ │ └── bedrock
│ │ │ ├── Bedrock.java
│ │ │ ├── ComposableOption.java
│ │ │ ├── Option.java
│ │ │ ├── Options.java
│ │ │ ├── OptionsByType.java
│ │ │ ├── annotations
│ │ │ ├── Experimental.java
│ │ │ └── Internal.java
│ │ │ ├── deferred
│ │ │ ├── AbstractDeferred.java
│ │ │ ├── Cached.java
│ │ │ ├── Deferred.java
│ │ │ ├── DeferredCallable.java
│ │ │ ├── DeferredFunction.java
│ │ │ ├── DeferredHelper.java
│ │ │ ├── DeferredInvoke.java
│ │ │ ├── DeferredNull.java
│ │ │ ├── DeferredPredicate.java
│ │ │ ├── Ensured.java
│ │ │ ├── Existing.java
│ │ │ ├── Future.java
│ │ │ ├── NeverAvailable.java
│ │ │ ├── NotAvailable.java
│ │ │ ├── PermanentlyUnavailableException.java
│ │ │ ├── Supervised.java
│ │ │ ├── TemporarilyUnavailableException.java
│ │ │ ├── UnavailableException.java
│ │ │ ├── atomic
│ │ │ │ ├── DeferredAtomicBoolean.java
│ │ │ │ ├── DeferredAtomicInteger.java
│ │ │ │ └── DeferredAtomicLong.java
│ │ │ ├── jmx
│ │ │ │ ├── DeferredJMXConnector.java
│ │ │ │ ├── DeferredMBeanAttribute.java
│ │ │ │ ├── DeferredMBeanInfo.java
│ │ │ │ └── DeferredMBeanProxy.java
│ │ │ └── options
│ │ │ │ ├── InitialDelay.java
│ │ │ │ ├── MaximumRetryDelay.java
│ │ │ │ └── RetryFrequency.java
│ │ │ ├── diagnostics
│ │ │ └── DiagnosticsRecording.java
│ │ │ ├── extensible
│ │ │ ├── AbstractExtensible.java
│ │ │ ├── AbstractFeature.java
│ │ │ ├── Extensible.java
│ │ │ └── Feature.java
│ │ │ ├── io
│ │ │ ├── FileHelper.java
│ │ │ └── NetworkHelper.java
│ │ │ ├── lang
│ │ │ ├── ExpressionEvaluator.java
│ │ │ ├── StringHelper.java
│ │ │ └── ThreadFactories.java
│ │ │ ├── options
│ │ │ ├── Decoration.java
│ │ │ ├── Decorations.java
│ │ │ ├── Diagnostics.java
│ │ │ ├── HttpProxy.java
│ │ │ ├── LaunchLogging.java
│ │ │ ├── Timeout.java
│ │ │ ├── Variable.java
│ │ │ └── Variables.java
│ │ │ ├── predicate
│ │ │ ├── AbstractPredicate.java
│ │ │ ├── AllOf.java
│ │ │ ├── Always.java
│ │ │ ├── Contains.java
│ │ │ ├── EqualTo.java
│ │ │ ├── GreaterThan.java
│ │ │ ├── Is.java
│ │ │ ├── IsNot.java
│ │ │ ├── IsNull.java
│ │ │ ├── LessThan.java
│ │ │ ├── Never.java
│ │ │ └── Predicates.java
│ │ │ ├── table
│ │ │ ├── Cell.java
│ │ │ ├── Row.java
│ │ │ ├── Table.java
│ │ │ ├── Tabular.java
│ │ │ └── Tabularize.java
│ │ │ └── util
│ │ │ ├── Capture.java
│ │ │ ├── Duration.java
│ │ │ ├── ExceptionListener.java
│ │ │ ├── ExponentialIterator.java
│ │ │ ├── FibonacciIterator.java
│ │ │ ├── MappingIterator.java
│ │ │ ├── Pair.java
│ │ │ ├── PerpetualIterator.java
│ │ │ ├── Primes.java
│ │ │ ├── ProxyHelper.java
│ │ │ ├── Quadruple.java
│ │ │ ├── RandomIterator.java
│ │ │ ├── ReflectionHelper.java
│ │ │ ├── RepetitiveIterator.java
│ │ │ ├── StopWatch.java
│ │ │ ├── SystemProperties.java
│ │ │ ├── Trilean.java
│ │ │ ├── Triple.java
│ │ │ ├── Tuple.java
│ │ │ └── Version.java
│ │ └── module-info.java
│ └── test
│ └── java
│ └── com
│ └── oracle
│ └── bedrock
│ ├── BedrockTest.java
│ ├── OptionsByTypeTest.java
│ ├── deferred
│ ├── AbstractDeferredTest.java
│ ├── DeferredHelperTest.java
│ ├── PermanentlyUnavailableExceptionTest.java
│ └── jmx
│ │ └── DeferredJMXConnectorTest.java
│ ├── lang
│ ├── ExpressionEvaluatorTests.java
│ └── StringHelperTest.java
│ ├── options
│ └── TimeoutTest.java
│ ├── table
│ └── TableTest.java
│ └── util
│ ├── ExponentialIteratorTest.java
│ ├── FibonacciIteratorTest.java
│ ├── PrimesTest.java
│ ├── ProxyHelperTest.java
│ ├── ReflectionHelperClass.java
│ ├── ReflectionHelperInterface.java
│ ├── ReflectionHelperMain.java
│ ├── ReflectionHelperTest.java
│ └── VersionTest.java
├── bedrock-runtime-docker-tests
├── pom.xml
└── src
│ └── test
│ ├── java
│ ├── PortMappingTest.java
│ ├── applications
│ │ ├── SleepingApplication.java
│ │ ├── SocketEchoClient.java
│ │ └── SocketEchoServer.java
│ ├── callables
│ │ └── FindNetworks.java
│ └── com
│ │ └── oracle
│ │ └── bedrock
│ │ └── runtime
│ │ └── docker
│ │ ├── AbstractFunctionalTest.java
│ │ ├── DockerContainerTest.java
│ │ ├── DockerFunctionalTest.java
│ │ ├── DockerImageTest.java
│ │ ├── DockerNetworkTest.java
│ │ ├── DockerTest.java
│ │ ├── commands
│ │ ├── AbstractCommandTest.java
│ │ ├── AbstractDockerCommandTest.java
│ │ ├── BuildTest.java
│ │ ├── EventsTest.java
│ │ ├── ImagesTest.java
│ │ ├── InspectTest.java
│ │ ├── KillTest.java
│ │ ├── LogsTest.java
│ │ ├── NetworkConnectTest.java
│ │ ├── NetworkCreateTest.java
│ │ ├── NetworkDisconnectTest.java
│ │ ├── NetworkInspectTest.java
│ │ ├── NetworkLsTest.java
│ │ ├── NetworkRemoveTest.java
│ │ ├── RemoveTest.java
│ │ ├── RunTest.java
│ │ ├── SimpleDockerCommandTest.java
│ │ └── StopTest.java
│ │ └── options
│ │ ├── ContainerCloseBehaviourTest.java
│ │ ├── DockerDefaultBaseImagesTest.java
│ │ ├── DockerfileDeployerTest.java
│ │ └── ImageCloseBehaviourTest.java
│ └── resources
│ ├── DockerfileTemplate.txt
│ ├── JavaDockerfile
│ ├── TestDockerfile
│ ├── client-cache-config.xml
│ └── server-cache-config.xml
├── bedrock-runtime-docker
├── pom.xml
└── src
│ └── main
│ └── java
│ └── com
│ └── oracle
│ └── bedrock
│ └── runtime
│ └── docker
│ ├── Docker.java
│ ├── DockerContainer.java
│ ├── DockerImage.java
│ ├── DockerPlatform.java
│ ├── DockerRemoteTerminal.java
│ ├── PortMapping.java
│ ├── commands
│ ├── AbstractDockerCommand.java
│ ├── Build.java
│ ├── CommandWithArgumentList.java
│ ├── Events.java
│ ├── Images.java
│ ├── Inspect.java
│ ├── Kill.java
│ ├── Logs.java
│ ├── Network.java
│ ├── Remove.java
│ ├── Run.java
│ ├── SimpleDockerCommand.java
│ └── Stop.java
│ ├── machine
│ ├── DockerMachine.java
│ ├── DockerMachinePlatform.java
│ └── MachineCloseBehaviour.java
│ └── options
│ ├── ContainerCloseBehaviour.java
│ ├── DockerDefaultBaseImages.java
│ ├── DockerfileDeployer.java
│ └── ImageCloseBehaviour.java
├── bedrock-runtime-jacoco
├── pom.xml
└── src
│ ├── main
│ └── java
│ │ ├── com
│ │ └── oracle
│ │ │ └── bedrock
│ │ │ └── jacoco
│ │ │ ├── Dump.java
│ │ │ └── JacocoProfile.java
│ │ └── module-info.java
│ └── test
│ └── java
│ ├── applications
│ └── SleepingApplication.java
│ └── com
│ └── oracle
│ └── bedrock
│ └── jacoco
│ └── JacocoProfileTest.java
├── bedrock-runtime-maven-tests
├── pom.xml
└── src
│ └── test
│ └── java
│ └── com
│ └── oracle
│ └── bedrock
│ └── maven
│ └── MavenTest.java
├── bedrock-runtime-maven
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ ├── com
│ │ │ └── oracle
│ │ │ │ └── bedrock
│ │ │ │ └── maven
│ │ │ │ └── Maven.java
│ │ └── module-info.java
│ └── resources
│ │ └── META-INF
│ │ └── services
│ │ └── com.mycila.maven.plugin.license.PropertiesProvider
│ └── test
│ ├── java
│ └── com
│ │ └── oracle
│ │ └── bedrock
│ │ └── maven
│ │ └── MavenTest.java
│ └── resources
│ └── example-resource.txt
├── bedrock-runtime-remote-tests
├── pom.xml
└── src
│ └── test
│ ├── java
│ └── com
│ │ └── oracle
│ │ └── bedrock
│ │ └── runtime
│ │ └── remote
│ │ ├── AbstractRemoteTest.java
│ │ ├── SimpleRemoteApplicationLauncherTest.java
│ │ ├── http
│ │ ├── AbstractHttpDeployerTest.java
│ │ ├── CurlHttpDeployerTest.java
│ │ ├── HttpDeployerTest.java
│ │ └── WGetHttpDeployerTest.java
│ │ ├── java
│ │ ├── GetProgramArgs.java
│ │ ├── GetWorkingDirectory.java
│ │ ├── RemoteJavaApplicationLauncherTest.java
│ │ ├── applications
│ │ │ ├── EventingApplication.java
│ │ │ └── SleepingApplication.java
│ │ └── options
│ │ │ └── JavaDeploymentTest.java
│ │ ├── options
│ │ └── FileShareDeployerTest.java
│ │ └── ssh
│ │ ├── JSchFileShareDeployerTest.java
│ │ ├── JSchSessionFactoryTest.java
│ │ └── SftpDeployerTest.java
│ └── resources
│ └── test.txt
├── bedrock-runtime-remote
├── pom.xml
└── src
│ └── main
│ └── java
│ ├── com
│ └── oracle
│ │ └── bedrock
│ │ └── runtime
│ │ └── remote
│ │ ├── AbstractRemoteApplicationLauncher.java
│ │ ├── AbstractRemoteTerminal.java
│ │ ├── Authentication.java
│ │ ├── DeployedArtifacts.java
│ │ ├── DeploymentArtifact.java
│ │ ├── Password.java
│ │ ├── RemoteApplicationProcess.java
│ │ ├── RemotePlatform.java
│ │ ├── RemoteTerminal.java
│ │ ├── RemoteTerminalBuilder.java
│ │ ├── RemoteTerminals.java
│ │ ├── SecureKeys.java
│ │ ├── SimpleRemoteApplicationLauncher.java
│ │ ├── http
│ │ ├── CurlHttpDeployer.java
│ │ ├── HttpAuthenticationType.java
│ │ ├── HttpBasedAuthentication.java
│ │ ├── HttpDeployer.java
│ │ └── WGetHttpDeployer.java
│ │ ├── java
│ │ ├── RemoteJavaApplicationLauncher.java
│ │ └── options
│ │ │ └── JavaDeployment.java
│ │ ├── options
│ │ ├── CustomDeployment.java
│ │ ├── Deployer.java
│ │ ├── Deployment.java
│ │ ├── FileShareDeployer.java
│ │ ├── HostName.java
│ │ ├── StrictHostChecking.java
│ │ └── UserKnownHostsFile.java
│ │ └── ssh
│ │ ├── JSchBasedAuthentication.java
│ │ ├── JSchFileShareDeployer.java
│ │ ├── JSchRemoteTerminal.java
│ │ ├── JSchSessionFactory.java
│ │ ├── JSchSocketFactory.java
│ │ ├── JschLogger.java
│ │ ├── JschRemoteApplicationProcess.java
│ │ └── SftpDeployer.java
│ └── module-info.java
├── bedrock-runtime-tests
├── pom.xml
└── src
│ └── test
│ └── java
│ ├── classloader
│ └── applications
│ │ ├── ChildApplication.java
│ │ ├── EventingApplication.java
│ │ ├── ParentApplication.java
│ │ ├── SimpleTester.java
│ │ ├── SleepingApplication.java
│ │ ├── Tester.java
│ │ ├── TesterApplication.java
│ │ └── TesterProducer.java
│ └── com
│ └── oracle
│ └── bedrock
│ └── runtime
│ ├── AbstractPlatformTest.java
│ ├── DummyApp.java
│ ├── DummyClassPathApp.java
│ ├── LocalPlatformApplicationTest.java
│ ├── concurrent
│ └── socket
│ │ └── SocketBasedRemoteChannelTest.java
│ ├── java
│ ├── AbstractJavaApplicationTest.java
│ ├── ApplicationWithHangingShutdownHook.java
│ ├── ContainerBasedJavaApplicationTest.java
│ ├── ErrorThrowingCallable.java
│ ├── FaultyApplication.java
│ ├── GetProgramArgs.java
│ ├── GetWorkingDirectory.java
│ ├── LocalPlatformJavaApplicationTest.java
│ ├── NonStaticInnerClasses.java
│ ├── SystemPropertyMutatingApplication.java
│ └── container
│ │ ├── ContainerBasedJavaApplicationProcessTest.java
│ │ ├── ContainerMBeanServerBuilderTest.java
│ │ ├── Dummy.java
│ │ ├── DummyMBean.java
│ │ └── InvocationTracingApplication.java
│ └── network
│ ├── AvailablePortIteratorTest.java
│ └── NetworkHelperIT.java
├── bedrock-runtime-vagrant-tests
├── pom.xml
└── src
│ └── test
│ ├── java
│ └── com
│ │ └── oracle
│ │ └── bedrock
│ │ └── runtime
│ │ └── virtual
│ │ └── vagrant
│ │ ├── DoStuff.java
│ │ ├── VagrantChecker.java
│ │ └── VagrantFunctionalTest.java
│ └── resources
│ └── Single-VM-Vagrantfile.rb
├── bedrock-runtime-vagrant
├── pom.xml
└── src
│ └── main
│ └── java
│ ├── com
│ └── oracle
│ │ └── bedrock
│ │ └── runtime
│ │ └── virtual
│ │ └── vagrant
│ │ ├── OptionsBasedVagrantFileBuilder.java
│ │ ├── URLBasedVagrantFileBuilder.java
│ │ ├── VagrantFileBuilder.java
│ │ ├── VagrantPlatform.java
│ │ └── options
│ │ ├── AbstractNetwork.java
│ │ ├── BoxName.java
│ │ ├── BridgedNetwork.java
│ │ ├── HostOnlyNetwork.java
│ │ ├── Network.java
│ │ ├── Networks.java
│ │ ├── UpdateBox.java
│ │ ├── VagrantConfigurations.java
│ │ ├── VagrantProperties.java
│ │ ├── VagrantProperty.java
│ │ ├── VagrantProvisioner.java
│ │ └── VagrantProvisioners.java
│ └── module-info.java
├── bedrock-runtime-virtual-tests
├── pom.xml
└── src
│ └── test
│ └── java
│ └── com
│ └── oracle
│ └── bedrock
│ └── runtime
│ └── virtual
│ └── HostAddressIteratorTest.java
├── bedrock-runtime-virtual
├── pom.xml
└── src
│ └── main
│ └── java
│ ├── com
│ └── oracle
│ │ └── bedrock
│ │ └── runtime
│ │ └── virtual
│ │ ├── CloseAction.java
│ │ ├── HostAddressIterator.java
│ │ └── VirtualPlatform.java
│ └── module-info.java
├── bedrock-runtime-windows-tests
├── pom.xml
└── src
│ └── test
│ └── java
│ └── com
│ └── oracle
│ └── bedrock
│ └── runtime
│ └── remote
│ └── windows
│ ├── http
│ ├── AbstractWindowsHttpDeployerTest.java
│ └── PowerShellHttpDeployerTest.java
│ └── winrm
│ ├── AbstractWindowsTest.java
│ ├── InputStreamConnectorTest.java
│ ├── OutputStreamConnectorTest.java
│ ├── SoapConnectionTest.java
│ ├── WindowsRemoteTerminalTest.java
│ └── WindowsSessionTest.java
├── bedrock-runtime-windows
├── pom.xml
└── src
│ └── main
│ ├── java
│ └── com
│ │ └── oracle
│ │ └── bedrock
│ │ └── runtime
│ │ └── remote
│ │ └── windows
│ │ ├── WindowsDeployers.java
│ │ ├── WindowsFileShareDeployer.java
│ │ ├── WindowsTerminals.java
│ │ ├── http
│ │ └── PowerShellHttpDeployer.java
│ │ └── winrm
│ │ ├── InputStreamConnector.java
│ │ ├── ObjectFactories.java
│ │ ├── OutputStreamConnector.java
│ │ ├── SoapConnection.java
│ │ ├── SoapFaultException.java
│ │ ├── WindowsRemoteApplicationProcess.java
│ │ ├── WindowsRemoteTerminal.java
│ │ ├── WindowsSession.java
│ │ ├── WindowsShellOptions.java
│ │ └── WindowsSoapOptions.java
│ └── resources
│ ├── bindings.xjb
│ ├── dtd
│ ├── XMLSchema.dtd
│ └── datatypes.dtd
│ ├── ws-man.properties
│ └── xsd
│ ├── addressing.xsd
│ ├── common.xsd
│ ├── dsp8019.xsd
│ ├── enumeration.xsd
│ ├── eventing.xsd
│ ├── management.xsd
│ ├── ms-wsman-cert.xsd
│ ├── ms-wsman-config.xsd
│ ├── ms-wsman-fault.xsd
│ ├── ms-wsman-interactive.xsd
│ ├── ms-wsman-plugin.xsd
│ ├── ms-wsman-shell.xsd
│ ├── soap-envelope.xsd
│ ├── transfer.xsd
│ ├── ws-addr.xsd
│ └── xml.xsd
├── bedrock-runtime
├── pom.xml
└── src
│ ├── main
│ └── java
│ │ ├── com
│ │ └── oracle
│ │ │ └── bedrock
│ │ │ └── runtime
│ │ │ ├── AbstractApplication.java
│ │ │ ├── AbstractAssembly.java
│ │ │ ├── AbstractAssemblyBuilder.java
│ │ │ ├── AbstractPlatform.java
│ │ │ ├── Application.java
│ │ │ ├── ApplicationConsole.java
│ │ │ ├── ApplicationConsoleBuilder.java
│ │ │ ├── ApplicationLauncher.java
│ │ │ ├── ApplicationListener.java
│ │ │ ├── ApplicationProcess.java
│ │ │ ├── ApplicationStream.java
│ │ │ ├── Assembly.java
│ │ │ ├── AssemblyBuilder.java
│ │ │ ├── Infrastructure.java
│ │ │ ├── LocalApplicationProcess.java
│ │ │ ├── LocalPlatform.java
│ │ │ ├── MetaClass.java
│ │ │ ├── OperatingSystem.java
│ │ │ ├── Platform.java
│ │ │ ├── Profile.java
│ │ │ ├── Profiles.java
│ │ │ ├── PropertiesBuilder.java
│ │ │ ├── Settings.java
│ │ │ ├── SimpleApplication.java
│ │ │ ├── SimpleApplicationLauncher.java
│ │ │ ├── SimpleAssembly.java
│ │ │ ├── StaticInfrastructure.java
│ │ │ ├── concurrent
│ │ │ ├── AbstractControllableRemoteChannel.java
│ │ │ ├── AbstractRemoteChannel.java
│ │ │ ├── ControllableRemoteChannel.java
│ │ │ ├── PipeBasedRemoteChannel.java
│ │ │ ├── RemoteCallable.java
│ │ │ ├── RemoteChannel.java
│ │ │ ├── RemoteChannelListener.java
│ │ │ ├── RemoteEvent.java
│ │ │ ├── RemoteEventListener.java
│ │ │ ├── RemoteRunnable.java
│ │ │ ├── callable
│ │ │ │ ├── GetSystemProperty.java
│ │ │ │ ├── RemoteCallableStaticMethod.java
│ │ │ │ └── RemoteMethodInvocation.java
│ │ │ ├── options
│ │ │ │ ├── Caching.java
│ │ │ │ └── StreamName.java
│ │ │ ├── runnable
│ │ │ │ ├── RuntimeExit.java
│ │ │ │ ├── RuntimeHalt.java
│ │ │ │ ├── SystemExit.java
│ │ │ │ └── ThreadDump.java
│ │ │ └── socket
│ │ │ │ ├── SocketBasedRemoteChannel.java
│ │ │ │ ├── SocketBasedRemoteChannelClient.java
│ │ │ │ └── SocketBasedRemoteChannelServer.java
│ │ │ ├── console
│ │ │ ├── AbstractPipedApplicationConsole.java
│ │ │ ├── CapturingApplicationConsole.java
│ │ │ ├── DefaultOutputRedirector.java
│ │ │ ├── EventsApplicationConsole.java
│ │ │ ├── FileWriterApplicationConsole.java
│ │ │ ├── InputFromIntputStreamRedirector.java
│ │ │ ├── InputRedirector.java
│ │ │ ├── NullApplicationConsole.java
│ │ │ ├── OutputRedirector.java
│ │ │ ├── OutputToOutputStreamRedirector.java
│ │ │ ├── PipedApplicationConsole.java
│ │ │ ├── StdErrRedirector.java
│ │ │ ├── StdInRedirector.java
│ │ │ ├── StdOutRedirector.java
│ │ │ └── SystemApplicationConsole.java
│ │ │ ├── java
│ │ │ ├── AbstractJavaApplication.java
│ │ │ ├── ClassPath.java
│ │ │ ├── ClassPathModifier.java
│ │ │ ├── ClassPathScanner.java
│ │ │ ├── ContainerBasedJavaApplicationLauncher.java
│ │ │ ├── JavaApplication.java
│ │ │ ├── JavaApplicationLauncher.java
│ │ │ ├── JavaApplicationProcess.java
│ │ │ ├── JavaApplicationRunner.java
│ │ │ ├── JavaVirtualMachine.java
│ │ │ ├── LocalJavaApplicationLauncher.java
│ │ │ ├── LocalProcessBuilder.java
│ │ │ ├── SimpleJavaApplication.java
│ │ │ ├── SimpleLocalProcessBuilder.java
│ │ │ ├── container
│ │ │ │ ├── AbstractContainerScope.java
│ │ │ │ ├── AbstractDelegatingInputStream.java
│ │ │ │ ├── AbstractDelegatingOutputStream.java
│ │ │ │ ├── AbstractScope.java
│ │ │ │ ├── Container.java
│ │ │ │ ├── ContainerClassLoader.java
│ │ │ │ ├── ContainerMBeanServerBuilder.java
│ │ │ │ ├── ContainerScope.java
│ │ │ │ ├── ContainerScopeClassLoader.java
│ │ │ │ ├── DefaultScope.java
│ │ │ │ ├── DelegatingMBeanServer.java
│ │ │ │ ├── DelegatingMBeanServerBuilder.java
│ │ │ │ ├── DelegatingProperties.java
│ │ │ │ ├── DelegatingStdErrOutputStream.java
│ │ │ │ ├── DelegatingStdInInputStream.java
│ │ │ │ ├── DelegatingStdOutOutputStream.java
│ │ │ │ ├── LineNumberingOutputStream.java
│ │ │ │ ├── PlatformScope.java
│ │ │ │ └── Scope.java
│ │ │ ├── features
│ │ │ │ └── JmxFeature.java
│ │ │ ├── io
│ │ │ │ ├── ClassLoaderAwareObjectInputStream.java
│ │ │ │ ├── NullReader.java
│ │ │ │ ├── NullWriter.java
│ │ │ │ └── Serialization.java
│ │ │ ├── options
│ │ │ │ ├── BedrockRunner.java
│ │ │ │ ├── ClassName.java
│ │ │ │ ├── Freeform.java
│ │ │ │ ├── Freeforms.java
│ │ │ │ ├── Headless.java
│ │ │ │ ├── HeapSize.java
│ │ │ │ ├── HotSpot.java
│ │ │ │ ├── IPv4Preferred.java
│ │ │ │ ├── JavaAgent.java
│ │ │ │ ├── JavaAgents.java
│ │ │ │ ├── JavaHome.java
│ │ │ │ ├── JavaModules.java
│ │ │ │ ├── JvmOption.java
│ │ │ │ ├── JvmOptions.java
│ │ │ │ ├── RemoteEvents.java
│ │ │ │ ├── SystemProperties.java
│ │ │ │ ├── SystemProperty.java
│ │ │ │ └── WaitToStart.java
│ │ │ └── profiles
│ │ │ │ ├── CommercialFeatures.java
│ │ │ │ ├── JmxProfile.java
│ │ │ │ └── RemoteDebugging.java
│ │ │ ├── network
│ │ │ └── AvailablePortIterator.java
│ │ │ └── options
│ │ │ ├── ApplicationClosingBehavior.java
│ │ │ ├── Argument.java
│ │ │ ├── Arguments.java
│ │ │ ├── CommandInterceptor.java
│ │ │ ├── Console.java
│ │ │ ├── ConsoleErrorRedirector.java
│ │ │ ├── ConsoleInputRedirector.java
│ │ │ ├── ConsoleOutputRedirector.java
│ │ │ ├── Discriminator.java
│ │ │ ├── DisplayName.java
│ │ │ ├── EnvironmentVariable.java
│ │ │ ├── EnvironmentVariables.java
│ │ │ ├── ErrorStreamRedirection.java
│ │ │ ├── Executable.java
│ │ │ ├── Orphanable.java
│ │ │ ├── PlatformPredicate.java
│ │ │ ├── PlatformSeparators.java
│ │ │ ├── Ports.java
│ │ │ ├── Shell.java
│ │ │ ├── StabilityPredicate.java
│ │ │ ├── TemporaryDirectory.java
│ │ │ └── WorkingDirectory.java
│ │ └── module-info.java
│ └── test
│ ├── java
│ ├── classloader
│ │ ├── child
│ │ │ └── DummyClass.java
│ │ └── parent
│ │ │ └── DummyParentLoadedClass.java
│ └── com
│ │ └── oracle
│ │ └── bedrock
│ │ └── runtime
│ │ ├── ExampleProfile.java
│ │ ├── InfrastructureAssemblyBuilderTest.java
│ │ ├── LocalPlatformTest.java
│ │ ├── ProfilesTest.java
│ │ ├── PropertiesBuilderTest.java
│ │ ├── concurrent
│ │ └── socket
│ │ │ └── SocketBasedRemoteChannelServerTest.java
│ │ ├── console
│ │ ├── CapturingApplicationConsoleTest.java
│ │ ├── EchoApp.java
│ │ ├── FileWriterApplicationConsoleTest.java
│ │ ├── InputToInputStreamRedirectorTest.java
│ │ ├── NullApplicationConsoleTest.java
│ │ ├── OutputToOutputStreamRedirectorTest.java
│ │ ├── PipedApplicationConsoleTest.java
│ │ ├── SimpleApp.java
│ │ ├── StdErrRedirectorTest.java
│ │ ├── StdOutRedirectorTest.java
│ │ └── SystemApplicationConsoleTest.java
│ │ ├── java
│ │ ├── ClassPathModifierTest.java
│ │ ├── ClassPathTest.java
│ │ ├── JavaVirtualMachineMockHelper.java
│ │ ├── JavaVirtualMachineTest.java
│ │ ├── console
│ │ │ └── PipedApplicationConsoleTest.java
│ │ ├── container
│ │ │ ├── ContainerClassLoaderTest.java
│ │ │ ├── ContainerScopeTest.java
│ │ │ └── DelegatingPropertiesTest.java
│ │ └── options
│ │ │ ├── HeapSizeTest.java
│ │ │ ├── JavaModulesTest.java
│ │ │ └── SystemPropertiesTest.java
│ │ ├── network
│ │ └── ListNets.java
│ │ └── options
│ │ ├── ArgumentsTest.java
│ │ ├── EnvironmentVariablesTest.java
│ │ ├── ExecutableTest.java
│ │ ├── PortsTest.java
│ │ └── WorkingDirectoryTest.java
│ └── resources
│ ├── META-INF
│ └── services
│ │ └── com.oracle.bedrock.runtime.Profile
│ └── propertiesbuilder-test.properties
├── bedrock-testing-support-tests
├── pom.xml
└── src
│ ├── main
│ └── java
│ │ └── com
│ │ └── oracle
│ │ └── bedrock
│ │ └── testsupport
│ │ └── junit
│ │ ├── AbstractJUnit3Suite.java
│ │ ├── AbstractJUnit3Test.java
│ │ ├── AbstractJUnit4Test.java
│ │ ├── AbstractRunWithAnnotatedTest.java
│ │ ├── AbstractRunWithEnclosedTest.java
│ │ ├── EmptyTest.java
│ │ ├── EnumTest.java
│ │ ├── GoodTest.java
│ │ ├── InterfaceTest.java
│ │ ├── JUnit3Suite.java
│ │ ├── JUnit3Test.java
│ │ ├── JUnit4Test.java
│ │ ├── MyBadTest.java
│ │ ├── MyOtherTest.java
│ │ ├── RunWithAnnotatedTest.java
│ │ └── SleepingApplication.java
│ └── test
│ └── java
│ └── com
│ └── oracle
│ └── bedrock
│ └── testsupport
│ └── junit
│ ├── JUnitTest.java
│ ├── JUnitTestRunnerTest.java
│ ├── TestClassPredicateTest.java
│ └── options
│ ├── TestClassesClassPathClassesTest.java
│ ├── TestClassesIncludeExcludePredicateTest.java
│ ├── TestClassesSpecificClassesTest.java
│ ├── TestClassesTest.java
│ ├── TestClassesTestMatcherTest.java
│ └── TestsTest.java
├── bedrock-testing-support
├── pom.xml
└── src
│ ├── main
│ └── java
│ │ ├── com
│ │ └── oracle
│ │ │ └── bedrock
│ │ │ └── testsupport
│ │ │ ├── MavenProjectFileUtils.java
│ │ │ ├── deferred
│ │ │ ├── Concurrent.java
│ │ │ ├── Concurrently.java
│ │ │ ├── DeferredMatch.java
│ │ │ ├── DeferredRemoteExecution.java
│ │ │ ├── Eventually.java
│ │ │ ├── FutureMatcher.java
│ │ │ ├── Repetitively.java
│ │ │ └── options
│ │ │ │ └── FailFast.java
│ │ │ ├── junit
│ │ │ ├── AbstractAssemblyResource.java
│ │ │ ├── AbstractBaseAssembly.java
│ │ │ ├── AbstractTest.java
│ │ │ ├── AbstractTestLogs.java
│ │ │ ├── BaseJUnitTestListener.java
│ │ │ ├── CheckJDK.java
│ │ │ ├── JUnitReporter.java
│ │ │ ├── JUnitTestListener.java
│ │ │ ├── JUnitTestRun.java
│ │ │ ├── JUnitTestRunner.java
│ │ │ ├── JUnitTextReporter.java
│ │ │ ├── JUnitUtils.java
│ │ │ ├── JUnitXmlReporter.java
│ │ │ ├── SimpleJUnitTestListener.java
│ │ │ ├── SimpleJUnitTestRun.java
│ │ │ ├── SystemPropertyIsolation.java
│ │ │ ├── TestClassPredicate.java
│ │ │ ├── TestLogs.java
│ │ │ ├── TestLogsExtension.java
│ │ │ └── options
│ │ │ │ ├── TestClasses.java
│ │ │ │ └── Tests.java
│ │ │ └── matchers
│ │ │ ├── ConstantMatcher.java
│ │ │ ├── EntrySetMatcher.java
│ │ │ ├── Equivalence.java
│ │ │ ├── MapMatcher.java
│ │ │ ├── RecordingMatcher.java
│ │ │ ├── ThrowableCausedByMatcher.java
│ │ │ ├── ThrowableMatcher.java
│ │ │ └── ThrowableMessageMatcher.java
│ │ └── module-info.java
│ └── test
│ └── java
│ └── com
│ └── oracle
│ └── bedrock
│ └── testsupport
│ ├── deferred
│ ├── ConcurrentlyTest.java
│ ├── DeferredMatchTest.java
│ ├── DeferredRemoteExecutionTest.java
│ ├── EventuallyTest.java
│ ├── RepetitivelyTest.java
│ └── TimeoutTest.java
│ └── junit
│ ├── JUnitReporterTest.java
│ ├── JUnitTestRunMetaClassTest.java
│ ├── JUnitTestRunnerListenerTest.java
│ ├── JUnitTestRunnerStartTestsTest.java
│ ├── JUnitTestRunnerStopTestsTest.java
│ ├── SimpleJUnitTestListenerTest.java
│ └── SimpleJUnitTestRunTest.java
├── documents
├── bedrock-coding-convention.xjs
├── java-license-header.txt
├── properties-license-header.txt
└── xml-license-header.txt
├── etc
├── dependency-check-suppression.xml
├── dependency-check.sh
└── deploy-snapshots.sh
└── pom.xml
/.github/workflows/build-win.yaml:
--------------------------------------------------------------------------------
1 | # ---------------------------------------------------------------------------
2 | # Bedrock GitHub Actions CI build on Windows.
3 | # ---------------------------------------------------------------------------
4 |
5 | name: CI Build (Win)
6 |
7 | on:
8 | workflow_dispatch:
9 | push:
10 | branches:
11 | - '*'
12 | pull_request:
13 | branches:
14 | - '*'
15 |
16 | jobs:
17 | build:
18 | runs-on: windows-latest
19 |
20 | strategy:
21 | fail-fast: false
22 | matrix:
23 | module:
24 | - bedrock-core
25 | - bedrock-runtime
26 | - bedrock-runtime-windows-tests
27 |
28 | steps:
29 | - name: Checkout
30 | uses: actions/checkout@v3
31 |
32 | - name: Set up JDK
33 | uses: actions/setup-java@v3
34 | with:
35 | distribution: 'oracle'
36 | java-version: '17'
37 |
38 | - name: Cache Maven packages
39 | uses: actions/cache@v3
40 | with:
41 | path: ~/.m2
42 | key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
43 | restore-keys: ${{ runner.os }}-m2-
44 |
45 | - name: Build
46 | shell: bash
47 | run: |
48 | export DEV_ROOT=$(pwd)
49 | mvn -U --batch-mode -e clean install -DskipTests -Pcoherence-ce
50 | mvn --batch-mode -e -nsu verify -pl ${{ matrix.module }} -Pcoherence-ce -Dgithub.build=true
51 |
--------------------------------------------------------------------------------
/.github/workflows/dependencies.yaml:
--------------------------------------------------------------------------------
1 | # ---------------------------------------------------------------------------
2 | # Bedrock dependencies check.
3 | # ---------------------------------------------------------------------------
4 |
5 | name: Dependencies Check
6 |
7 | on:
8 | workflow_dispatch:
9 | schedule:
10 | - cron: '0 5 * * *'
11 | push:
12 | branches:
13 | - '*'
14 | pull_request:
15 | branches:
16 | - '*'
17 |
18 | jobs:
19 | build:
20 | runs-on: ubuntu-latest
21 |
22 | steps:
23 | - name: Checkout
24 | uses: actions/checkout@v3
25 |
26 | - name: Set up JDK
27 | uses: actions/setup-java@v3
28 | with:
29 | distribution: 'oracle'
30 | java-version: '17'
31 |
32 | - name: Cache Maven packages
33 | uses: actions/cache@v3
34 | with:
35 | path: ~/.m2
36 | key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
37 | restore-keys: ${{ runner.os }}-m2-
38 |
39 | - name: Check
40 | shell: bash
41 | run: |
42 | export MAVEN_ARGS="-P coherence-ce"
43 | sh ./etc/dependency-check.sh
44 |
45 | - uses: actions/upload-artifact@v1
46 | if: failure()
47 | with:
48 | name: build-output
49 | path: "target/*.*"
50 |
--------------------------------------------------------------------------------
/.github/workflows/deploy-snapshots.yaml:
--------------------------------------------------------------------------------
1 | # This workflow will build a Java project with Maven and deploy snapshot
2 | # artifacts to Maven Central
3 | #
4 | # This job is triggered by a completed run of the "CI Build" action.
5 | # The "build" job only runs if the "CI Build" action completed successfully.
6 | # The deployed artifacts will be built from the same commit that the "CI Build" action used.
7 | #
8 | name: Deploy to Maven Central
9 |
10 | on:
11 | workflow_run:
12 | workflows: ["CI Build"]
13 | branches: [ main, develop-6.x ]
14 | types:
15 | - completed
16 |
17 | env:
18 | GITHUB_TOKEN: ${{ secrets.BOT_TOKEN }}
19 | GIT_USER: ${{ secrets.BOT_USERNAME }}
20 | GIT_EMAIL: ${{ secrets.BOT_EMAIL }}
21 | MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false
22 |
23 | jobs:
24 | build:
25 | if: ${{ github.event.workflow_run.conclusion == 'success' }}
26 |
27 | runs-on: ubuntu-latest
28 |
29 | steps:
30 | - uses: actions/checkout@v3
31 | with:
32 | fetch-depth: 0
33 |
34 | - name: Set up JDK
35 | uses: actions/setup-java@v3
36 | with:
37 | distribution: 'zulu'
38 | java-version: '17'
39 |
40 | - name: Cache Maven packages
41 | uses: actions/cache@v3
42 | with:
43 | path: ~/.m2
44 | key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
45 | restore-keys: ${{ runner.os }}-m2
46 |
47 | - name: Build with Maven
48 | env:
49 | MAVEN_SONATYPE_USERNAME: ${{ secrets.MAVEN_SONATYPE_USERNAME }}
50 | MAVEN_SONATYPE_TOKEN: ${{ secrets.MAVEN_SONATYPE_TOKEN }}
51 | GIT_COMMIT: ${{github.event.workflow_run.head_commit.id}}
52 | HEAD_BRANCH: ${{github.event.workflow_run.head_branch}}
53 | run: |
54 | echo "Checking out branch ${HEAD_BRANCH} commit ${GIT_COMMIT}"
55 | git checkout "${GIT_COMMIT}"
56 | git config --local user.name "${GIT_USER}"
57 | git config --local user.email "${GIT_EMAIL}"
58 | sh etc/deploy-snapshots.sh
59 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | *.ipr
3 | *.iws
4 | *.class
5 | *.jar
6 | *.ear
7 | *.war
8 | *.gar
9 | .idea/
10 | target/
11 | .settings/
12 | .project/
13 | .classpath/
14 | .checkstyle/
15 | .flattened-pom.xml
16 | dependency-reduced-pom.xml
17 |
--------------------------------------------------------------------------------
/.mvn/settings.xml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
35 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Brian Oliver
39 | */
40 | public class ContainerBasedCoherenceCacheServerIT extends AbstractCoherenceCacheServerTest
41 | {
42 | @Override
43 | public Platform getPlatform()
44 | {
45 | return JavaVirtualMachine.get();
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/bedrock-coherence/12.2.1/coherence-12.2.1-tests/src/test/java/com/oracle/bedrock/runtime/coherence/GetProcessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: GetProcessor.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.coherence;
27 |
28 | import com.tangosol.util.InvocableMap;
29 | import com.tangosol.util.processor.AbstractProcessor;
30 |
31 | /**
32 | * An {@link InvocableMap.EntryProcessor} to return the value of an entry.
33 | *
34 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetProcessor extends AbstractProcessor
40 | {
41 | /**
42 | * Constructs a {@link GetProcessor}.
43 | */
44 | public GetProcessor()
45 | {
46 | }
47 |
48 |
49 | @Override
50 | public Object process(InvocableMap.Entry entry)
51 | {
52 | return entry.isPresent() ? entry.getValue() : null;
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/bedrock-coherence/12.2.1/coherence-12.2.1-tests/src/test/java/com/oracle/bedrock/runtime/coherence/LocalCoherenceCacheServerIT.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: LocalCoherenceCacheServerTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.coherence;
27 |
28 | import com.oracle.bedrock.runtime.LocalPlatform;
29 | import com.oracle.bedrock.runtime.Platform;
30 | import com.oracle.bedrock.runtime.java.LocalJavaApplicationLauncher;
31 |
32 | /**
33 | * Functional Test for {@link CoherenceCacheServer}s using a {@link LocalJavaApplicationLauncher}.
34 | *
35 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Brian Oliver
39 | */
40 | public class LocalCoherenceCacheServerIT extends AbstractCoherenceCacheServerTest
41 | {
42 | @Override
43 | public Platform getPlatform()
44 | {
45 | return LocalPlatform.get();
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/bedrock-coherence/12.2.1/coherence-12.2.1-tests/src/test/resources/test-operational-override.xml:
--------------------------------------------------------------------------------
1 |
28 |
34 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
36 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2021. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2021. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2021. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2021. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2021. All Rights Reserved. Oracle Corporation.
36 | * Copyright (c) 2021. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2021. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2021. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
32 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
36 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
36 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
32 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2015. All Rights Reserved. Oracle Corporation.
32 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2008. All Rights Reserved. Oracle Corporation.
38 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
38 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
32 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
36 | * Typically application developers would not use this interface directly as
37 | * the {@link Application} interface provides both higher-level concepts and
38 | * increased functionality over that of which is defined here.
39 | *
40 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2015. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2015. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2018. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
37 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2011. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2011. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2019. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2019. All Rights Reserved. Oracle Corporation.
38 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2013. All Rights Reserved. Oracle Corporation.
41 | * Copyright (c) 2014. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
31 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
33 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
34 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
35 | * Copyright (c) 2016. All Rights Reserved. Oracle Corporation.
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetClusterName implements RemoteCallable
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetLocalMemberId implements RemoteCallable
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetLocalMemberRoleName implements RemoteCallable
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetLocalMemberSiteName implements RemoteCallable
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Brian Oliver
39 | */
40 | public class GetLocalMemberUID implements RemoteCallable
37 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
38 | *
39 | * @author Brian Oliver
40 | */
41 | @Disabled
42 | public class ContainerBasedCoherenceCacheServerIT extends AbstractCoherenceCacheServerTest
43 | {
44 | @Override
45 | public Platform getPlatform()
46 | {
47 | return JavaVirtualMachine.get();
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/bedrock-coherence/14.1.1/coherence-14.1.1/src/test/java/com/oracle/bedrock/runtime/coherence/GetProcessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: GetProcessor.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.coherence;
27 |
28 | import com.tangosol.util.InvocableMap;
29 | import com.tangosol.util.processor.AbstractProcessor;
30 |
31 | /**
32 | * An {@link InvocableMap.EntryProcessor} to return the value of an entry.
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetProcessor extends AbstractProcessor
40 | {
41 | /**
42 | * Constructs a {@link GetProcessor}.
43 | */
44 | public GetProcessor()
45 | {
46 | }
47 |
48 |
49 | @Override
50 | public Object process(InvocableMap.Entry entry)
51 | {
52 | return entry.isPresent() ? entry.getValue() : null;
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/bedrock-coherence/14.1.1/coherence-14.1.1/src/test/java/com/oracle/bedrock/runtime/coherence/LocalCoherenceCacheServerIT.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: LocalCoherenceCacheServerTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.coherence;
27 |
28 | import com.oracle.bedrock.runtime.LocalPlatform;
29 | import com.oracle.bedrock.runtime.Platform;
30 | import com.oracle.bedrock.runtime.java.LocalJavaApplicationLauncher;
31 |
32 | /**
33 | * Functional Test for {@link CoherenceCacheServer}s using a {@link LocalJavaApplicationLauncher}.
34 | *
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Brian Oliver
39 | */
40 | public class LocalCoherenceCacheServerIT extends AbstractCoherenceCacheServerTest
41 | {
42 | @Override
43 | public Platform getPlatform()
44 | {
45 | return LocalPlatform.get();
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/bedrock-coherence/14.1.1/coherence-14.1.1/src/test/resources/test-operational-override.xml:
--------------------------------------------------------------------------------
1 |
28 |
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetClusterName implements RemoteCallable
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetLocalMemberId implements RemoteCallable
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetLocalMemberRoleName implements RemoteCallable
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetLocalMemberSiteName implements RemoteCallable
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Brian Oliver
39 | */
40 | public class GetLocalMemberUID implements RemoteCallable
37 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
38 | *
39 | * @author Brian Oliver
40 | */
41 | @Disabled
42 | public class ContainerBasedCoherenceCacheServerIT extends AbstractCoherenceCacheServerTest
43 | {
44 | @Override
45 | public Platform getPlatform()
46 | {
47 | return JavaVirtualMachine.get();
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/bedrock-coherence/21.06/coherence-21.06/src/test/java/com/oracle/bedrock/runtime/coherence/GetProcessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: GetProcessor.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.coherence;
27 |
28 | import com.tangosol.util.InvocableMap;
29 | import com.tangosol.util.processor.AbstractProcessor;
30 |
31 | /**
32 | * An {@link InvocableMap.EntryProcessor} to return the value of an entry.
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetProcessor extends AbstractProcessor
40 | {
41 | /**
42 | * Constructs a {@link GetProcessor}.
43 | */
44 | public GetProcessor()
45 | {
46 | }
47 |
48 |
49 | @Override
50 | public Object process(InvocableMap.Entry entry)
51 | {
52 | return entry.isPresent() ? entry.getValue() : null;
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/bedrock-coherence/21.06/coherence-21.06/src/test/java/com/oracle/bedrock/runtime/coherence/LocalCoherenceCacheServerIT.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: LocalCoherenceCacheServerTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.coherence;
27 |
28 | import com.oracle.bedrock.runtime.LocalPlatform;
29 | import com.oracle.bedrock.runtime.Platform;
30 | import com.oracle.bedrock.runtime.java.LocalJavaApplicationLauncher;
31 |
32 | /**
33 | * Functional Test for {@link CoherenceCacheServer}s using a {@link LocalJavaApplicationLauncher}.
34 | *
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Brian Oliver
39 | */
40 | public class LocalCoherenceCacheServerIT extends AbstractCoherenceCacheServerTest
41 | {
42 | @Override
43 | public Platform getPlatform()
44 | {
45 | return LocalPlatform.get();
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/bedrock-coherence/21.06/coherence-21.06/src/test/resources/test-operational-override.xml:
--------------------------------------------------------------------------------
1 |
28 |
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetProcessor extends AbstractProcessor
40 | {
41 | /**
42 | * Constructs a {@link GetProcessor}.
43 | */
44 | public GetProcessor()
45 | {
46 | }
47 |
48 |
49 | @Override
50 | public Object process(InvocableMap.Entry entry)
51 | {
52 | return entry.isPresent() ? entry.getValue() : null;
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/bedrock-coherence/3.7.1/coherence-3.7.1-tests/src/test/java/com/oracle/bedrock/runtime/coherence/LocalCoherenceCacheServerTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: LocalCoherenceCacheServerTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.coherence;
27 |
28 | import com.oracle.bedrock.runtime.LocalPlatform;
29 | import com.oracle.bedrock.runtime.Platform;
30 | import com.oracle.bedrock.runtime.java.LocalJavaApplicationLauncher;
31 |
32 | /**
33 | * Functional Test for {@link CoherenceCacheServer}s using a {@link LocalJavaApplicationLauncher}.
34 | *
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Brian Oliver
39 | */
40 | public class LocalCoherenceCacheServerTest extends AbstractCoherenceCacheServerTest
41 | {
42 | @Override
43 | public Platform getPlatform()
44 | {
45 | return LocalPlatform.get();
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/bedrock-coherence/3.7.1/coherence-3.7.1-tests/src/test/resources/test-operational-override.xml:
--------------------------------------------------------------------------------
1 |
28 |
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetClusterName implements RemoteCallable
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetLocalMemberId implements RemoteCallable
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetLocalMemberRoleName implements RemoteCallable
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class GetLocalMemberSiteName implements RemoteCallable
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Brian Oliver
39 | */
40 | public class GetLocalMemberUID implements RemoteCallable
33 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
34 | *
35 | * @author Brian Oliver
36 | */
37 | public interface ComposableOption
37 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
38 | *
39 | * @author Brian Oliver
40 | */
41 | @Documented
42 | @Retention(RetentionPolicy.RUNTIME)
43 | public @interface Experimental
44 | {
45 | }
46 |
--------------------------------------------------------------------------------
/bedrock-core/src/main/java/com/oracle/bedrock/annotations/Internal.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: Internal.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.annotations;
27 |
28 | import java.lang.annotation.Documented;
29 | import java.lang.annotation.Retention;
30 | import java.lang.annotation.RetentionPolicy;
31 |
32 | /**
33 | * Annotates that a class, interface, enum, method, attribute or parameter is
34 | * considered internal and should not be used outside of Oracle Bedrock.
35 | *
37 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
38 | *
39 | * @author Brian Oliver
40 | */
41 | @Documented
42 | @Retention(RetentionPolicy.RUNTIME)
43 | public @interface Internal
44 | {
45 | }
46 |
--------------------------------------------------------------------------------
/bedrock-core/src/main/java/com/oracle/bedrock/deferred/AbstractDeferred.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: AbstractDeferred.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.deferred;
27 |
28 | import java.lang.reflect.ParameterizedType;
29 | import java.lang.reflect.Type;
30 |
31 | /**
32 | * A base implementation of a {@link Deferred}.
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public abstract class AbstractDeferred
33 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
34 | *
35 | * @see Extensible
36 | *
37 | * @author Brian Oliver
38 | * @author Aleks Seovic
39 | */
40 | public interface Feature
41 | {
42 | /**
43 | * Invoked prior to the {@link Feature} being added to the specified {@link Extensible}.
44 | *
45 | * @param extensible the {@link Extensible}
46 | */
47 | void onAddingTo(Extensible extensible);
48 |
49 |
50 | /**
51 | * Invoked prior to the {@link Feature} being removed from the specified {@link Extensible}.
52 | *
53 | * @param extensible the {@link Extensible}
54 | */
55 | void onRemovingFrom(Extensible extensible);
56 | }
57 |
--------------------------------------------------------------------------------
/bedrock-core/src/main/java/com/oracle/bedrock/predicate/AbstractPredicate.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: AbstractPredicate.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.predicate;
27 |
28 | import java.util.function.Predicate;
29 |
30 | /**
31 | * An abstract implementation of a {@link Predicate}.
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Brian Oliver
37 | */
38 | public abstract class AbstractPredicate
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Brian Oliver
37 | */
38 | public class Always implements java.util.function.Predicate
39 | {
40 | @Override
41 | public boolean test(Object value)
42 | {
43 | return true;
44 | }
45 |
46 |
47 | @Override
48 | public String toString()
49 | {
50 | return "Always{}";
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/bedrock-core/src/main/java/com/oracle/bedrock/predicate/IsNull.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: IsNull.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.predicate;
27 |
28 | import java.util.function.Predicate;
29 |
30 | /**
31 | * A {@link Predicate} to determine if a value is null
.
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Brian Oliver
37 | */
38 | public class IsNull implements Predicate
39 | {
40 | @Override
41 | public boolean test(Object value)
42 | {
43 | return value == null;
44 | }
45 |
46 |
47 | @Override
48 | public String toString()
49 | {
50 | return "IsNull{}";
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/bedrock-core/src/main/java/com/oracle/bedrock/predicate/Never.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: Never.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.predicate;
27 |
28 | import java.util.function.Predicate;
29 |
30 | /**
31 | * A {@link Predicate} that always fails (never succeeds).
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Brian Oliver
37 | */
38 | public class Never implements Predicate
39 | {
40 | @Override
41 | public boolean test(Object value)
42 | {
43 | return false;
44 | }
45 |
46 |
47 | @Override
48 | public String toString()
49 | {
50 | return "Never{}";
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/bedrock-core/src/main/java/com/oracle/bedrock/table/Tabular.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: Tabular.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.table;
27 |
28 | /**
29 | * A {@link Tabular} type is one that can provide a {@link Table}-based representation of itself.
30 | *
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Brian Oliver
35 | */
36 | public interface Tabular
37 | {
38 | /**
39 | * Obtains a {@link Table}-based representation of the state of the implementor.
40 | *
41 | * @return a {@link Table} representation of the state
42 | */
43 | public Table getTable();
44 | }
45 |
--------------------------------------------------------------------------------
/bedrock-core/src/main/java/com/oracle/bedrock/util/ExceptionListener.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: ExceptionListener.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.util;
27 |
28 | /**
29 | * A listener to be called when an {@link Throwable} occurs during
30 | * some operation.
31 | *
33 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
34 | *
35 | * @author Brian Oliver
36 | */
37 | public interface ExceptionListener
38 | {
39 | /**
40 | * Called when an operation failed and raised a {@link Throwable}.
41 | *
42 | * @param throwable the {@link Throwable}
43 | */
44 | public void onException(Throwable throwable);
45 | }
46 |
--------------------------------------------------------------------------------
/bedrock-core/src/main/java/com/oracle/bedrock/util/Tuple.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: Tuple.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.util;
27 |
28 | /**
29 | * An immutable sequence of values, each potentially of a different type.
30 | *
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Brian Oliver
35 | */
36 | public interface Tuple
37 | {
38 | /**
39 | * Obtains the number of values in the {@link Tuple}.
40 | *
41 | * @return the number of values in the {@link Tuple}
42 | */
43 | public int size();
44 |
45 |
46 | /**
47 | * Obtains the value at the specified index. The first value is at index 0.
48 | *
49 | * @param index the position of the value to obtain
50 | *
51 | * @return the value at the specified position in the {@link Tuple}
52 | *
53 | * @throws IndexOutOfBoundsException when 0 < index <= size()
54 | */
55 | public Object get(int index) throws IndexOutOfBoundsException;
56 | }
57 |
--------------------------------------------------------------------------------
/bedrock-core/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | open module com.oracle.bedrock {
2 | requires jakarta.el;
3 | requires java.xml;
4 | requires org.mockito;
5 | requires java.logging;
6 | requires java.management;
7 | exports com.oracle.bedrock;
8 | exports com.oracle.bedrock.annotations;
9 | exports com.oracle.bedrock.deferred;
10 | exports com.oracle.bedrock.deferred.atomic;
11 | exports com.oracle.bedrock.deferred.jmx;
12 | exports com.oracle.bedrock.deferred.options;
13 | exports com.oracle.bedrock.diagnostics;
14 | exports com.oracle.bedrock.extensible;
15 | exports com.oracle.bedrock.io;
16 | exports com.oracle.bedrock.lang;
17 | exports com.oracle.bedrock.options;
18 | exports com.oracle.bedrock.predicate;
19 | exports com.oracle.bedrock.table;
20 | exports com.oracle.bedrock.util;
21 | }
22 |
--------------------------------------------------------------------------------
/bedrock-core/src/test/java/com/oracle/bedrock/BedrockTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: BedrockTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock;
27 |
28 | import org.junit.Test;
29 |
30 | import static org.hamcrest.Matchers.nullValue;
31 | import static org.hamcrest.core.Is.is;
32 | import static org.hamcrest.core.IsNot.not;
33 | import static org.junit.Assert.assertThat;
34 |
35 | /**
36 | * Unit Tests for {@link Bedrock}.
37 | *
39 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
40 | *
41 | * @author Brian Oliver
42 | */
43 | public class BedrockTest
44 | {
45 | /**
46 | * Ensure we can determine a version for Oracle Bedrock.
47 | */
48 | @Test
49 | public void shouldHaveVersion()
50 | {
51 | String version = Bedrock.getVersion();
52 |
53 | System.out.println("Running Oracle Bedrock: " + version);
54 |
55 | assertThat(version, is(not(nullValue())));
56 | }
57 | }
58 |
--------------------------------------------------------------------------------
/bedrock-core/src/test/java/com/oracle/bedrock/util/ReflectionHelperInterface.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: ReflectionHelperInterface.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.util;
27 |
28 | /**
29 | * A simple {@link ReflectionHelper} test interface, containing numerous methods
30 | *
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Brian Oliver
35 | */
36 | public interface ReflectionHelperInterface
37 | {
38 | public void voidMethodWithZeroArguments();
39 |
40 |
41 | public void voidMethodWithOnePrimitiveArgument(int value);
42 |
43 |
44 | public void voidMethodWithOneWrapperArgument(Long value);
45 |
46 |
47 | public void voidMethodWithOneStringArgument(String value);
48 | }
49 |
--------------------------------------------------------------------------------
/bedrock-core/src/test/java/com/oracle/bedrock/util/ReflectionHelperMain.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: ReflectionHelperMain.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.util;
27 |
28 | /**
29 | * A simple {@link ReflectionHelper} test class containing a main method
30 | *
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Brian Oliver
35 | */
36 | public class ReflectionHelperMain
37 | {
38 | public static void main(String[] args)
39 | {
40 | // for testing purposes
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/bedrock-runtime-docker-tests/src/test/java/com/oracle/bedrock/runtime/docker/commands/NetworkRemoveTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: NetworkRemoveTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.docker.commands;
27 |
28 | import org.junit.Test;
29 |
30 | import java.util.List;
31 |
32 | import static org.hamcrest.collection.IsIterableContainingInOrder.contains;
33 | import static org.junit.Assert.assertThat;
34 |
35 | /**
36 | * Tests for the {@link Network.Remove} class.
37 | *
39 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
40 | *
41 | * @author Jonathan Knight
42 | */
43 | public class NetworkRemoveTest extends AbstractCommandTest
44 | {
45 | @Test
46 | public void shouldInspectNetwork() throws Exception
47 | {
48 | Network.Remove command = Network.remove("foo", "bar");
49 | List
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Jonathan Knight
37 | */
38 | public class GetWorkingDirectory implements RemoteCallable
33 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
34 | *
35 | * @author Brian Oliver
36 | */
37 | public interface Authentication
38 | {
39 | }
40 |
--------------------------------------------------------------------------------
/bedrock-runtime-remote/src/main/java/com/oracle/bedrock/runtime/remote/RemoteApplicationProcess.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: RemoteApplicationProcess.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.remote;
27 |
28 | import com.oracle.bedrock.annotations.Internal;
29 | import com.oracle.bedrock.runtime.Application;
30 | import com.oracle.bedrock.runtime.ApplicationProcess;
31 |
32 | /**
33 | * An {@link ApplicationProcess} that is executing or executed on
34 | * a {@link RemotePlatform}.
35 | *
41 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
42 | *
43 | * @author Brian Oliver
44 | */
45 | @Internal
46 | public interface RemoteApplicationProcess extends ApplicationProcess
47 | {
48 | }
49 |
--------------------------------------------------------------------------------
/bedrock-runtime-remote/src/main/java/com/oracle/bedrock/runtime/remote/RemoteTerminalBuilder.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: RemoteTerminalBuilder.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.remote;
27 |
28 | import com.oracle.bedrock.Option;
29 | import com.oracle.bedrock.annotations.Internal;
30 | import com.oracle.bedrock.runtime.Platform;
31 |
32 | /**
33 | * A internal mechanism to build {@link RemoteTerminal}s for {@link RemotePlatform}s.
34 | *
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Jonathan Knight
39 | */
40 | @Internal
41 | public interface RemoteTerminalBuilder extends Option
42 | {
43 | /**
44 | * Builds a {@link RemoteTerminal} that will connect to a {@link Platform}.
45 | *
46 | * @param platform the {@link Platform}
47 | *
48 | * @return a {@link RemoteTerminal}
49 | */
50 | RemoteTerminal build(Platform platform);
51 | }
52 |
--------------------------------------------------------------------------------
/bedrock-runtime-remote/src/main/java/com/oracle/bedrock/runtime/remote/http/HttpAuthenticationType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: HttpAuthenticationType.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.remote.http;
27 |
28 | import com.oracle.bedrock.Option;
29 |
30 | /**
31 | * An enumeration of possible HTTP authentication types.
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Jonathan Knight
37 | */
38 | public enum HttpAuthenticationType implements Option{Basic,
39 | NTLM,
40 | Kerberos}
41 |
--------------------------------------------------------------------------------
/bedrock-runtime-remote/src/main/java/com/oracle/bedrock/runtime/remote/ssh/JschLogger.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: JschLogger.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.remote.ssh;
27 |
28 | /**
29 | * A logger for Jsch.
30 | *
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Jonathan Knight
35 | */
36 | public class JschLogger implements com.jcraft.jsch.Logger
37 | {
38 | @Override
39 | public boolean isEnabled(int level)
40 | {
41 | return true;
42 | }
43 |
44 | @Override
45 | public void log(int level, String message)
46 | {
47 | System.err.println("JSCH <" + level + "> " + message);
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/bedrock-runtime-remote/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | open module com.oracle.bedrock.runtime.remote {
2 | exports com.oracle.bedrock.runtime.remote;
3 | exports com.oracle.bedrock.runtime.remote.http;
4 | exports com.oracle.bedrock.runtime.remote.java;
5 | exports com.oracle.bedrock.runtime.remote.java.options;
6 | exports com.oracle.bedrock.runtime.remote.options;
7 | exports com.oracle.bedrock.runtime.remote.ssh;
8 |
9 | requires transitive com.oracle.bedrock.runtime;
10 |
11 | requires java.logging;
12 |
13 | requires jdk.httpserver;
14 | requires com.jcraft.jsch;
15 | }
--------------------------------------------------------------------------------
/bedrock-runtime-tests/src/test/java/classloader/applications/SimpleTester.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: SimpleTester.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package classloader.applications;
27 |
28 | /**
29 | * A simple implementation of a {@link Tester}.
30 | *
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Brian Oliver
35 | */
36 | public class SimpleTester implements Tester
37 | {
38 | @Override
39 | public void doNothing()
40 | {
41 | // skip
42 | }
43 |
44 |
45 | @Override
46 | public String getMeaningOfLife()
47 | {
48 | return "42";
49 | }
50 |
51 |
52 | @Override
53 | public int identity(int value)
54 | {
55 | return value;
56 | }
57 | }
58 |
--------------------------------------------------------------------------------
/bedrock-runtime-tests/src/test/java/classloader/applications/Tester.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: Tester.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package classloader.applications;
27 |
28 | /**
29 | * A simple class that returns values passed to it.
30 | *
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Brian Oliver
35 | */
36 | public interface Tester
37 | {
38 | /**
39 | * Does nothing and returns nothing.
40 | */
41 | public void doNothing();
42 |
43 |
44 | /**
45 | * Obtain the meaning of life.
46 | *
47 | * @return the meaning of life (42)
48 | */
49 | public String getMeaningOfLife();
50 |
51 |
52 | /**
53 | * An identity function for integers.
54 | *
55 | * @param value the value to be returned
56 | * @return the value passed to the method
57 | */
58 | public int identity(int value);
59 | }
60 |
--------------------------------------------------------------------------------
/bedrock-runtime-tests/src/test/java/classloader/applications/TesterProducer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: TesterProducer.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package classloader.applications;
27 |
28 | import com.oracle.bedrock.runtime.concurrent.RemoteCallable;
29 |
30 | /**
31 | * A {@link RemoteCallable} for testing purposes, that returns the
32 | * {@link Tester} of a {@link TesterApplication}.
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public class TesterProducer implements RemoteCallable
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Brian Oliver
37 | */
38 | public class FaultyApplication
39 | {
40 | /**
41 | * The main for the application
42 | *
43 | * @param args the arguments for the application
44 | */
45 | public static void main(String[] args) throws IOException
46 | {
47 | throw new RuntimeException("This application is faulty.");
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/bedrock-runtime-tests/src/test/java/com/oracle/bedrock/runtime/java/GetProgramArgs.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: GetProgramArgs.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.java;
27 |
28 | import com.oracle.bedrock.runtime.concurrent.RemoteCallable;
29 |
30 | import java.lang.management.ManagementFactory;
31 | import java.util.List;
32 |
33 | /**
34 | * A {@link RemoteCallable} implementation that get all of the arguments
35 | * used to start the process.
36 | *
38 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
39 | *
40 | * @author Jonathan Knight
41 | */
42 | public class GetProgramArgs implements RemoteCallable>
43 | {
44 | /**
45 | * Obtain the arguments used to start this process.
46 | *
47 | * @return the arguments used to start this process
48 | *
49 | * @throws Exception
50 | */
51 | @Override
52 | public List
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Jonathan Knight
37 | */
38 | public class GetWorkingDirectory implements RemoteCallable
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Jonathan Knight
35 | */
36 | public class Dummy implements DummyMBean
37 | {
38 | private int attributeOne;
39 |
40 |
41 | /**
42 | * Return Attribute One.
43 | *
44 | * @return
45 | */
46 | public int getAttributeOne()
47 | {
48 | return attributeOne;
49 | }
50 |
51 |
52 | /**
53 | * Set Attribute One.
54 | *
55 | * @param attributeOne
56 | */
57 | public void setAttributeOne(int attributeOne)
58 | {
59 | this.attributeOne = attributeOne;
60 | }
61 | }
62 |
--------------------------------------------------------------------------------
/bedrock-runtime-tests/src/test/java/com/oracle/bedrock/runtime/java/container/DummyMBean.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: DummyMBean.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.java.container;
27 |
28 | /**
29 | * A dummy MBean interface used in tests.
30 | *
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Jonathan Knight
35 | */
36 | public interface DummyMBean
37 | {
38 | int getAttributeOne();
39 | }
40 |
--------------------------------------------------------------------------------
/bedrock-runtime-vagrant-tests/src/test/resources/Single-VM-Vagrantfile.rb:
--------------------------------------------------------------------------------
1 | # -*- mode: ruby -*-
2 | # vi: set ft=ruby :
3 |
4 | # Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
5 | VAGRANTFILE_API_VERSION = "2"
6 |
7 | Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
8 | config.vm.box = 'oracle/java8'
9 | config.vm.box_check_update=false
10 | config.vm.network 'private_network', ip: '192.168.56.210'
11 | end
12 |
--------------------------------------------------------------------------------
/bedrock-runtime-vagrant/pom.xml:
--------------------------------------------------------------------------------
1 |
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Brian Oliver
37 | */
38 | public interface ApplicationConsoleBuilder extends Option
39 | {
40 | /**
41 | * Realizes an {@link ApplicationConsole} for the specified application name.
42 | *
43 | * @param applicationName the name of the application that will use the
44 | * returned {@link ApplicationConsole}
45 | *
46 | * @return an {@link ApplicationConsole} for the specified application name
47 | */
48 | ApplicationConsole build(String applicationName);
49 | }
50 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/com/oracle/bedrock/runtime/SimpleAssembly.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: SimpleAssembly.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime;
27 |
28 | import com.oracle.bedrock.OptionsByType;
29 | import com.oracle.bedrock.annotations.Internal;
30 |
31 | /**
32 | * A simple implementation of an {@link Assembly}
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Jonathan Knight
38 | *
39 | * @param the type of {@link Application} contained within this {@link SimpleAssembly}
40 | */
41 | @Internal
42 | public class SimpleAssembly extends AbstractAssembly
43 | {
44 | /**
45 | * Constructs a {@link SimpleAssembly}.
46 | *
47 | * @param optionsByType the {@link OptionsByType} for the {@link Assembly}
48 | */
49 | public SimpleAssembly(OptionsByType optionsByType)
50 | {
51 | super(optionsByType);
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/com/oracle/bedrock/runtime/concurrent/RemoteCallable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: RemoteCallable.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.concurrent;
27 |
28 | import java.io.Serializable;
29 | import java.util.concurrent.Callable;
30 |
31 | /**
32 | * A {@link Callable} that may be executed remotely.
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | *
39 | * @see RemoteChannel
40 | */
41 | public interface RemoteCallable
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | @Internal
40 | public interface RemoteChannelListener
41 | {
42 | /**
43 | * Called when a {@link RemoteChannel} is opened.
44 | *
45 | * @param channel the {@link RemoteChannel}
46 | */
47 | public void onOpened(RemoteChannel channel);
48 |
49 |
50 | /**
51 | * Called when a {@link RemoteChannel} is closed.
52 | *
53 | * @param channel the {@link RemoteChannel}
54 | */
55 | public void onClosed(RemoteChannel channel);
56 | }
57 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/com/oracle/bedrock/runtime/concurrent/RemoteEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: RemoteEvent.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.concurrent;
27 |
28 | import java.io.Serializable;
29 |
30 | /**
31 | * Represents an arbitrary event that may fired by one process and received
32 | * by a different process.
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Jonathan Knight
38 | */
39 | public interface RemoteEvent extends Serializable
40 | {
41 | }
42 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/com/oracle/bedrock/runtime/concurrent/RemoteEventListener.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: RemoteEventListener.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.concurrent;
27 |
28 | import java.util.EventListener;
29 |
30 | /**
31 | * A {@link EventListener} that receives {@link RemoteEvent}s.
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Jonathan Knight
37 | */
38 | public interface RemoteEventListener extends EventListener
39 | {
40 | /**
41 | * Process the specified {@link RemoteEvent}.
42 | *
43 | * @param event the {@link RemoteEvent} that has been fired
44 | */
45 | void onEvent(RemoteEvent event);
46 | }
47 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/com/oracle/bedrock/runtime/concurrent/RemoteRunnable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: RemoteRunnable.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.concurrent;
27 |
28 | import java.io.Serializable;
29 |
30 | /**
31 | * A {@link Runnable} that may be executed remotely.
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Brian Oliver
37 | *
38 | * @see RemoteChannel
39 | */
40 | public interface RemoteRunnable extends Runnable, Serializable
41 | {
42 | }
43 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/com/oracle/bedrock/runtime/console/StdErrRedirector.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: StdErrRedirector.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.console;
27 |
28 | import java.io.PrintWriter;
29 |
30 | /**
31 | * An {@link OutputRedirector} that redirects output
32 | * to an {@link com.oracle.bedrock.runtime.ApplicationConsole}'s
33 | * error writer.
34 | *
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Jonathan Knight
39 | */
40 | public class StdErrRedirector
41 | extends DefaultOutputRedirector
42 | {
43 | @Override
44 | protected PrintWriter ensurePrintWriter()
45 | {
46 | return getConsole().getErrorWriter();
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/com/oracle/bedrock/runtime/console/StdOutRedirector.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: StdOutRedirector.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.console;
27 |
28 | import java.io.PrintWriter;
29 |
30 | /**
31 | * A {@link OutputRedirector} that redirects output
32 | * to an {@link com.oracle.bedrock.runtime.ApplicationConsole}'s
33 | * output writer.
34 | *
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Jonathan Knight
39 | */
40 | public class StdOutRedirector
41 | extends DefaultOutputRedirector
42 | {
43 | @Override
44 | protected PrintWriter ensurePrintWriter()
45 | {
46 | return getConsole().getOutputWriter();
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/com/oracle/bedrock/runtime/java/JavaApplicationProcess.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: JavaApplicationProcess.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.java;
27 |
28 | import com.oracle.bedrock.annotations.Internal;
29 | import com.oracle.bedrock.runtime.ApplicationProcess;
30 | import com.oracle.bedrock.runtime.concurrent.RemoteChannel;
31 |
32 | import java.util.Properties;
33 |
34 | /**
35 | * A {@link ApplicationProcess} specifically for managing Java-based
36 | * Applications at runtime.
37 | *
39 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
40 | *
41 | * @author Brian Oliver
42 | */
43 | @Internal
44 | public interface JavaApplicationProcess extends ApplicationProcess, RemoteChannel
45 | {
46 | /**
47 | * Obtains the resolved System {@link Properties} provided to the {@link JavaApplicationProcess}
48 | * when it was launched.
49 | *
50 | * @return the resolved System {@link Properties}
51 | */
52 | Properties getSystemProperties();
53 | }
54 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/com/oracle/bedrock/runtime/java/SimpleLocalProcessBuilder.java:
--------------------------------------------------------------------------------
1 | package com.oracle.bedrock.runtime.java;
2 |
3 | import com.oracle.bedrock.OptionsByType;
4 |
5 | import java.io.File;
6 | import java.io.IOException;
7 | import java.util.List;
8 | import java.util.Map;
9 |
10 | /**
11 | * A simple {@link LocalProcessBuilder} implementation that
12 | * wraps a Java {@link ProcessBuilder}.
13 | */
14 | public class SimpleLocalProcessBuilder
15 | implements LocalProcessBuilder
16 | {
17 | private final ProcessBuilder processBuilder;
18 |
19 | public SimpleLocalProcessBuilder(String executable) {
20 | processBuilder = new ProcessBuilder(executable);
21 | }
22 |
23 | @Override
24 | public LocalProcessBuilder command(String... command) {
25 | processBuilder.command(command);
26 | return this;
27 | }
28 |
29 | @Override
30 | public List
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | */
39 | public interface JvmOption extends Option
40 | {
41 | /**
42 | * Obtains the values for the {@link JvmOption}.
43 | *
44 | * @param optionsByType {@link OptionsByType} to be used for resolving the values.
45 | *
46 | * @return the values for the {@link JvmOption}
47 | */
48 | Iterable
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Brian Oliver
37 | */
38 | public class JvmOptions
39 | {
40 | /**
41 | * Creates an {@link Option} representing a set of strings
42 | * representing Java Virtual Machine options.
43 | *
44 | * @param options the options
45 | *
46 | * @return the {@link JvmOptions}
47 | */
48 | public static Freeforms include(String... options)
49 | {
50 | return new Freeforms(options);
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/com/oracle/bedrock/runtime/options/ApplicationClosingBehavior.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: ApplicationClosingBehavior.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.options;
27 |
28 | import com.oracle.bedrock.Option;
29 | import com.oracle.bedrock.runtime.Application;
30 |
31 | /**
32 | * An {@link Option} defining custom closing behavior for an {@link Application}.
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Brian Oliver
38 | *
39 | * @param the type of {@link Application}
40 | */
41 | public interface ApplicationClosingBehavior extends Option
42 | {
43 | /**
44 | * Called prior to the {@link Application} being closed.
45 | *
46 | * @param application the {@link Application} being closed
47 | * @param options the {@link Option}s for closing the application
48 | */
49 | public void onBeforeClosing(A application,
50 | Option... options);
51 | }
52 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | open module com.oracle.bedrock.runtime {
2 | exports com.oracle.bedrock.runtime;
3 | exports com.oracle.bedrock.runtime.concurrent;
4 | exports com.oracle.bedrock.runtime.concurrent.callable;
5 | exports com.oracle.bedrock.runtime.concurrent.options;
6 | exports com.oracle.bedrock.runtime.concurrent.runnable;
7 | exports com.oracle.bedrock.runtime.concurrent.socket;
8 | exports com.oracle.bedrock.runtime.console;
9 | exports com.oracle.bedrock.runtime.java;
10 | exports com.oracle.bedrock.runtime.java.container;
11 | exports com.oracle.bedrock.runtime.java.features;
12 | exports com.oracle.bedrock.runtime.java.io;
13 | exports com.oracle.bedrock.runtime.java.options;
14 | exports com.oracle.bedrock.runtime.java.profiles;
15 | exports com.oracle.bedrock.runtime.network;
16 | exports com.oracle.bedrock.runtime.options;
17 |
18 | requires transitive com.oracle.bedrock;
19 |
20 | requires java.logging;
21 | requires java.management;
22 | requires java.rmi;
23 |
24 | uses com.oracle.bedrock.runtime.Profile;
25 | }
26 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/test/java/classloader/parent/DummyParentLoadedClass.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: DummyParentLoadedClass.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package classloader.parent;
27 |
28 | /**
29 | * A simple test class that will be used for tests that want a parent loaded class.
30 | *
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Brian Oliver
35 | */
36 | public class DummyParentLoadedClass
37 | {
38 | /**
39 | * Sets the a System property.
40 | *
41 | * @param key
42 | * @param value
43 | */
44 | public static void setProperty(String key,
45 | String value)
46 | {
47 | System.setProperty(key, value);
48 | }
49 |
50 |
51 | /**
52 | * Obtains a System property.
53 | *
54 | * @param key
55 | *
56 | * @return
57 | */
58 | public static String getProperty(String key)
59 | {
60 | return System.getProperty(key);
61 | }
62 | }
63 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/test/java/com/oracle/bedrock/runtime/LocalPlatformTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: LocalPlatformTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime;
27 |
28 | import com.oracle.bedrock.io.NetworkHelper;
29 |
30 | import org.junit.Test;
31 |
32 | import static org.hamcrest.CoreMatchers.is;
33 |
34 | import static org.hamcrest.MatcherAssert.assertThat;
35 |
36 | import java.net.InetAddress;
37 |
38 | /**
39 | * Unit tests for {@link LocalPlatform}s.
40 | *
42 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
43 | *
44 | * @author Jonathan Knight
45 | * @author Brian Oliver
46 | */
47 | public class LocalPlatformTest
48 | {
49 | @Test
50 | public void shouldReturnFeasibleLocalHost() throws Exception
51 | {
52 | InetAddress address = LocalPlatform.get().getAddress();
53 |
54 | assertThat(address, is(NetworkHelper.getFeasibleLocalHost()));
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/test/java/com/oracle/bedrock/runtime/console/NullApplicationConsoleTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: NullApplicationConsoleTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.console;
27 |
28 | import org.junit.Test;
29 |
30 | import static org.hamcrest.CoreMatchers.is;
31 | import static org.hamcrest.MatcherAssert.assertThat;
32 |
33 | /**
34 | * @author Jonathan Knight
35 | */
36 | public class NullApplicationConsoleTest
37 | {
38 | /**
39 | * A {@link NullApplicationConsole} should always return false
40 | * from {@link NullApplicationConsole#isDiagnosticsEnabled()}
41 | */
42 | @Test
43 | public void shouldNotBeDiagnosticMode() throws Exception
44 | {
45 | NullApplicationConsole console = new NullApplicationConsole();
46 |
47 | assertThat(console.isDiagnosticsEnabled(), is(false));
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/test/java/com/oracle/bedrock/runtime/console/SimpleApp.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: SimpleApp.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.runtime.console;
27 |
28 | import com.oracle.bedrock.runtime.ApplicationConsole;
29 |
30 | /**
31 | * A simple application to use to test
32 | * {@link ApplicationConsole}
33 | * implementations.
34 | *
35 | * @author Jonathan Knight
36 | */
37 | public class SimpleApp
38 | {
39 | public static void main(String[] args)
40 | {
41 | for (String arg : args)
42 | {
43 | System.out.println("Out: " + arg);
44 | System.err.println("Err: " + arg);
45 | }
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/bedrock-runtime/src/test/resources/META-INF/services/com.oracle.bedrock.runtime.Profile:
--------------------------------------------------------------------------------
1 |
2 | com.oracle.bedrock.runtime.ProfilesTest$CustomProfile
3 | com.oracle.bedrock.runtime.ProfilesTest$NonOptionCustomProfile
--------------------------------------------------------------------------------
/bedrock-runtime/src/test/resources/propertiesbuilder-test.properties:
--------------------------------------------------------------------------------
1 | Key-1=Value-1
2 | Key-2=Value-2
3 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/AbstractJUnit3Suite.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: AbstractJUnit3Suite.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import junit.framework.Test;
29 | import junit.framework.TestSuite;
30 |
31 | /**
32 | * A test class that has a JUnit 3 suite() method.
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Jonathan Knight
38 | */
39 | public abstract class AbstractJUnit3Suite
40 | {
41 | public static Test suite()
42 | {
43 | return new TestSuite(JUnit3Test.class);
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/AbstractJUnit3Test.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: AbstractJUnit3Test.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import junit.framework.TestCase;
29 |
30 | /**
31 | * A JUnit 3 test class
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Jonathan Knight
37 | */
38 | public abstract class AbstractJUnit3Test extends TestCase
39 | {
40 | public void testSomething()
41 | {
42 |
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/AbstractJUnit4Test.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: AbstractJUnit4Test.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import org.junit.Before;
29 | import org.junit.Test;
30 |
31 | /**
32 | * An abstract JUnit 4 test class
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Jonathan Knight
38 | */
39 | public abstract class AbstractJUnit4Test
40 | {
41 | @Before
42 | public void setup() throws Exception
43 | {
44 | }
45 |
46 | @Test
47 | public void shouldPass() throws Exception
48 | {
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/AbstractRunWithAnnotatedTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: AbstractRunWithAnnotatedTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import org.junit.Test;
29 | import org.junit.runner.RunWith;
30 | import org.junit.runners.Parameterized;
31 |
32 | /**
33 | * A test class using the {@link RunWith} annotation.
34 | *
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Jonathan Knight
39 | */
40 | @RunWith(Parameterized.class)
41 | public abstract class AbstractRunWithAnnotatedTest
42 | {
43 | @Test
44 | public void shouldTestThings() throws Exception
45 | {
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/AbstractRunWithEnclosedTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: AbstractRunWithEnclosedTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import org.junit.Test;
29 | import org.junit.experimental.runners.Enclosed;
30 | import org.junit.runner.RunWith;
31 |
32 | /**
33 | * An abstract test class using the {@link Enclosed} runner.
34 | *
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Jonathan Knight
39 | */
40 | @RunWith(Enclosed.class)
41 | public abstract class AbstractRunWithEnclosedTest
42 | {
43 | @Test
44 | public void shouldTestSomethingAbstract() throws Exception
45 | {
46 |
47 | }
48 |
49 | }
50 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/EmptyTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: EmptyTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | /**
29 | * A test class with no tests.
30 | *
32 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
33 | *
34 | * @author Jonathan Knight
35 | */
36 | public class EmptyTest
37 | {
38 | }
39 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/EnumTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: EnumTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import org.junit.Test;
29 |
30 | /**
31 | * A test class that is an Enum
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Jonathan Knight
37 | */
38 | public enum EnumTest
39 | {
40 | Foo,Bar;
41 |
42 | @Test
43 | public void shouldDoStuff() throws Exception
44 | {
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/GoodTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: GoodTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import org.junit.Test;
29 |
30 | /**
31 | * A JUnit passing test class
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Jonathan Knight
37 | */
38 | public class GoodTest
39 | {
40 | @Test
41 | public void shouldPass() throws Exception
42 | {
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/InterfaceTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: InterfaceTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import org.junit.Test;
29 |
30 | /**
31 | * A test class that is an interface
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Jonathan Knight
37 | */
38 | public interface InterfaceTest
39 | {
40 | @Test
41 | public void shouldDoStuff() throws Exception;
42 | }
43 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/JUnit3Suite.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: JUnit3Suite.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import junit.framework.Test;
29 | import junit.framework.TestSuite;
30 |
31 | /**
32 | * A test class that has a JUnit 3 suite() method.
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Jonathan Knight
38 | */
39 | public class JUnit3Suite
40 | {
41 | public static Test suite()
42 | {
43 | return new TestSuite(JUnit3Test.class);
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/JUnit3Test.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: JUnit3Test.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import junit.framework.TestCase;
29 |
30 | /**
31 | * A JUnit 3 test class
32 | *
34 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
35 | *
36 | * @author Jonathan Knight
37 | */
38 | public class JUnit3Test extends TestCase
39 | {
40 | public void testSomething()
41 | {
42 |
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/MyBadTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: MyBadTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import org.junit.Before;
29 | import org.junit.Test;
30 |
31 | /**
32 | * A class of dummy unit tests.
33 | *
35 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
36 | *
37 | * @author Jonathan Knight
38 | */
39 | public class MyBadTest
40 | {
41 | @Before
42 | public void setup() throws Exception
43 | {
44 | throw new RuntimeException("Oops!");
45 | }
46 |
47 | @Test
48 | public void shouldPass() throws Exception
49 | {
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/bedrock-testing-support-tests/src/main/java/com/oracle/bedrock/testsupport/junit/RunWithAnnotatedTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: RunWithAnnotatedTest.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import org.junit.Test;
29 | import org.junit.runner.RunWith;
30 | import org.junit.runners.Parameterized;
31 |
32 | /**
33 | * A test class using the {@link RunWith} annotation.
34 | *
36 | * Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
37 | *
38 | * @author Jonathan Knight
39 | */
40 | @RunWith(Parameterized.class)
41 | public class RunWithAnnotatedTest
42 | {
43 | @Test
44 | public void shouldTestThings() throws Exception
45 | {
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/bedrock-testing-support/src/main/java/com/oracle/bedrock/testsupport/junit/CheckJDK.java:
--------------------------------------------------------------------------------
1 | /*
2 | * File: CheckJDK.java
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
26 | package com.oracle.bedrock.testsupport.junit;
27 |
28 | import org.junit.Assume;
29 |
30 | import static org.hamcrest.CoreMatchers.is;
31 |
32 | /**
33 | * A utility to assert information about the test JDK.
34 | *
35 | * @author Jonathan Knight 2020.07.22
36 | */
37 | public class CheckJDK
38 | {
39 | public static final String JDK_VENDOR_ORACLE = "Oracle Corporation";
40 |
41 | public static void assumeOracleJDK()
42 | {
43 | String sVendor = System.getProperty("java.vm.vendor");
44 | Assume.assumeThat("Skipping test - JVM vendor is not Oracle", sVendor, is(JDK_VENDOR_ORACLE));
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/bedrock-testing-support/src/main/java/module-info.java:
--------------------------------------------------------------------------------
1 | open module com.oracle.bedrock.testsupport {
2 | exports com.oracle.bedrock.testsupport;
3 | exports com.oracle.bedrock.testsupport.deferred;
4 | exports com.oracle.bedrock.testsupport.deferred.options;
5 | exports com.oracle.bedrock.testsupport.junit;
6 | exports com.oracle.bedrock.testsupport.junit.options;
7 | exports com.oracle.bedrock.testsupport.matchers;
8 |
9 | requires transitive com.oracle.bedrock.runtime;
10 | requires static junit;
11 | requires static org.junit.jupiter.api;
12 | requires org.hamcrest;
13 | requires java.logging;
14 | }
--------------------------------------------------------------------------------
/bedrock-testing-support/src/test/java/com/oracle/bedrock/testsupport/deferred/TimeoutTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2000, 2022, Oracle and/or its affiliates.
3 | *
4 | * Licensed under the Universal Permissive License v 1.0 as shown at
5 | * https://oss.oracle.com/licenses/upl.
6 | */
7 | package com.oracle.bedrock.testsupport.deferred;
8 |
9 | import org.junit.Before;
10 | import org.junit.Test;
11 |
12 | import java.util.concurrent.TimeUnit;
13 |
14 | import static com.oracle.bedrock.deferred.DeferredHelper.invoking;
15 | import static org.hamcrest.CoreMatchers.is;
16 | import static org.junit.Assert.assertThrows;
17 |
18 | public class TimeoutTest
19 | {
20 | private int count = 0;
21 |
22 | @Before
23 | public void setup()
24 | {
25 | count = 0;
26 | }
27 |
28 | @Test
29 | public void shouldTimeout()
30 | {
31 | assertThrows(AssertionError.class,
32 | () -> Eventually.assertThat(invoking(this).getCount(1000), is(10), Eventually.within(5, TimeUnit.SECONDS)));
33 | }
34 |
35 | @Test
36 | public void shouldNotTimeout()
37 | {
38 | Eventually.assertThat(invoking(this).getCount(1000), is(3), Eventually.within(10, TimeUnit.SECONDS));
39 | }
40 |
41 | public int getCount(long cMillis)
42 | {
43 | try
44 | {
45 | count++;
46 | Thread.sleep(cMillis);
47 | return count;
48 | }
49 | catch (InterruptedException e)
50 | {
51 | throw new RuntimeException(e);
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/documents/java-license-header.txt:
--------------------------------------------------------------------------------
1 | /*
2 | * File: $fileName$
3 | *
4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | *
6 | * The contents of this file are subject to the terms and conditions of
7 | * the Common Development and Distribution License 1.0 (the "License").
8 | *
9 | * You may not use this file except in compliance with the License.
10 | *
11 | * You can obtain a copy of the License by consulting the LICENSE.txt file
12 | * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | *
14 | * See the License for the specific language governing permissions
15 | * and limitations under the License.
16 | *
17 | * When distributing the software, include this License Header Notice in each
18 | * file and include the License file LICENSE.txt.
19 | *
20 | * MODIFICATIONS:
21 | * If applicable, add the following below the License Header, with the fields
22 | * enclosed by brackets [] replaced by your own identifying information:
23 | * "Portions Copyright [year] [name of copyright owner]"
24 | */
25 |
--------------------------------------------------------------------------------
/documents/properties-license-header.txt:
--------------------------------------------------------------------------------
1 | #
2 | # File: $fileName$
3 | #
4 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
5 | #
6 | # The contents of this file are subject to the terms and conditions of
7 | # the Common Development and Distribution License 1.0 (the "License").
8 | #
9 | # You may not use this file except in compliance with the License.
10 | #
11 | # You can obtain a copy of the License by consulting the LICENSE.txt file
12 | # distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
13 | #
14 | # See the License for the specific language governing permissions
15 | # and limitations under the License.
16 | #
17 | # When distributing the software, include this License Header Notice in each
18 | # file and include the License file LICENSE.txt.
19 | #
20 | # MODIFICATIONS:
21 | # If applicable, add the following below the License Header, with the fields
22 | # enclosed by brackets [] replaced by your own identifying information:
23 | # "Portions Copyright [year] [name of copyright owner]"
24 | #
--------------------------------------------------------------------------------
/documents/xml-license-header.txt:
--------------------------------------------------------------------------------
1 |
25 |
--------------------------------------------------------------------------------
/etc/dependency-check.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash -e
2 |
3 | on_error(){
4 | CODE="${?}" && \
5 | set +x && \
6 | printf "[ERROR] Error(code=%s) occurred at %s:%s command: %s\n" \
7 | "${CODE}" "${BASH_SOURCE}" "${LINENO}" "${BASH_COMMAND}"
8 | }
9 | trap on_error ERR
10 |
11 | # Path to this script
12 | if [ -h "${0}" ] ; then
13 | readonly SCRIPT_PATH="$(readlink "${0}")"
14 | else
15 | readonly SCRIPT_PATH="${0}"
16 | fi
17 |
18 | # Path to the root of the workspace
19 | # shellcheck disable=SC2046
20 | readonly WS_DIR=$(cd $(dirname -- "${SCRIPT_PATH}") ; cd .. ; pwd -P)
21 |
22 | readonly RESULT_DIR="${WS_DIR}/target"
23 | readonly RESULT_FILE="${RESULT_DIR}/dependency-check-result.txt"
24 | mkdir -p "${RESULT_DIR}" || true
25 |
26 | die(){ cat "${RESULT_FILE}" ; echo "Dependency report in ${WS_DIR}/target" ; echo "${1}" ; exit 1 ;}
27 |
28 | echo "Running CVE check - results: ${RESULT_FILE}"
29 | mvn ${MAVEN_ARGS} -Dorg.slf4j.simpleLogger.defaultLogLevel=WARN org.owasp:dependency-check-maven:aggregate \
30 | -Dtop.parent.basedir="${WS_DIR}" -nsu \
31 | > "${RESULT_FILE}" || die "Error running the Maven command"
32 |
33 | grep -i "One or more dependencies were identified with known vulnerabilities" "${RESULT_FILE}" \
34 | && die "CVE SCAN ERROR" || echo "CVE SCAN OK"
35 |
--------------------------------------------------------------------------------
/etc/deploy-snapshots.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | set -e
3 |
4 | CURRENT_VERSION=$(mvn org.apache.maven.plugins:maven-help-plugin:3.4.0:evaluate -Dexpression=project.version -nsu | grep -e '^[[:digit:]]')
5 |
6 | if [ "${CURRENT_VERSION}" = "" ]; then
7 | echo "Could not find current version from Maven"
8 | exit 1
9 | fi
10 |
11 | if [ -z $(echo "${CURRENT_VERSION}" | grep SNAPSHOT) ]; then
12 | echo "This job only deploys SNAPSHOT versions, skipping version ${CURRENT_VERSION}"
13 | exit 0
14 | fi
15 |
16 | echo "Building version ${CURRENT_VERSION}"
17 | mvn -s ./.mvn/settings.xml -B clean deploy -DskipTests -Pcoherence-ce -Dgithub.build=true
18 |
--------------------------------------------------------------------------------