├── handler
├── handler-executor
│ ├── package
│ │ ├── Dockerfile
│ │ ├── env.list
│ │ ├── local
│ │ │ └── config
│ │ │ │ ├── external.properties
│ │ │ │ └── external-minikube.properties
│ │ ├── run.sh
│ │ └── dockerRun.sh
│ ├── impl
│ │ └── src
│ │ │ ├── main
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── comcast
│ │ │ │ │ └── pop
│ │ │ │ │ └── handler
│ │ │ │ │ └── executor
│ │ │ │ │ └── impl
│ │ │ │ │ ├── shutdown
│ │ │ │ │ └── ShutdownProcessor.java
│ │ │ │ │ ├── processor
│ │ │ │ │ ├── OperationWrapperFactory.java
│ │ │ │ │ ├── OnOperationCompleteListener.java
│ │ │ │ │ ├── runner
│ │ │ │ │ │ └── event
│ │ │ │ │ │ │ └── OperationCompleteEvent.java
│ │ │ │ │ ├── JsonContextReferenceParser.java
│ │ │ │ │ └── parallel
│ │ │ │ │ │ └── OperationConductorModifier.java
│ │ │ │ │ ├── registry
│ │ │ │ │ └── resident
│ │ │ │ │ │ └── operations
│ │ │ │ │ │ └── ResidentHandlerFactory.java
│ │ │ │ │ ├── progress
│ │ │ │ │ └── agenda
│ │ │ │ │ │ ├── OperationProgressProvider.java
│ │ │ │ │ │ └── AgendaProgressConsumer.java
│ │ │ │ │ ├── exception
│ │ │ │ │ └── AgendaExecutorException.java
│ │ │ │ │ ├── resident
│ │ │ │ │ ├── log
│ │ │ │ │ │ └── LogHandlerInput.java
│ │ │ │ │ └── generator
│ │ │ │ │ │ └── UpdateAgendaResidentHandlerFactory.java
│ │ │ │ │ ├── properties
│ │ │ │ │ └── ExecutorProperty.java
│ │ │ │ │ └── config
│ │ │ │ │ └── ExecutorConfigProperty.java
│ │ │ └── resources
│ │ │ │ └── com
│ │ │ │ └── comcast
│ │ │ │ └── pop
│ │ │ │ └── handler
│ │ │ │ └── executor
│ │ │ │ └── executorMessages.properties
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── handler
│ │ │ └── executor
│ │ │ └── impl
│ │ │ └── messages
│ │ │ └── ExecutorMessagesTest.java
│ ├── api
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── handler
│ │ │ └── executor
│ │ │ └── api
│ │ │ └── ExecutorHandlerInput.java
│ └── test
│ │ └── main
│ │ └── testng-functional.xml
├── handler-base
│ └── src
│ │ ├── test
│ │ ├── resources
│ │ │ └── com
│ │ │ │ └── comcast
│ │ │ │ └── pop
│ │ │ │ └── handler
│ │ │ │ └── base
│ │ │ │ └── messages
│ │ │ │ ├── test.json
│ │ │ │ └── test.properties
│ │ └── java
│ │ │ └── com
│ │ │ └── comast
│ │ │ └── pop
│ │ │ └── handler
│ │ │ └── base
│ │ │ ├── progress
│ │ │ └── reporter
│ │ │ │ ├── TestConfig.java
│ │ │ │ └── BaseReporterThreadConfigTest.java
│ │ │ └── messages
│ │ │ ├── HandlerMessagesTest.java
│ │ │ └── TestMessages.java
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── comast
│ │ │ └── pop
│ │ │ └── handler
│ │ │ └── base
│ │ │ ├── payload
│ │ │ ├── PayloadReader.java
│ │ │ ├── PayloadReaderFactory.java
│ │ │ ├── PayloadWriterFactory.java
│ │ │ └── PayloadWriter.java
│ │ │ ├── processor
│ │ │ ├── HandlerMetadata.java
│ │ │ └── HandlerProcessor.java
│ │ │ ├── field
│ │ │ ├── api
│ │ │ │ ├── LaunchType.java
│ │ │ │ ├── args
│ │ │ │ │ ├── CommandLineArgument.java
│ │ │ │ │ ├── MetaData.java
│ │ │ │ │ └── HandlerArgument.java
│ │ │ │ └── HandlerField.java
│ │ │ └── retriever
│ │ │ │ ├── api
│ │ │ │ └── NamedField.java
│ │ │ │ └── environment
│ │ │ │ └── EnvironmentVariableProvider.java
│ │ │ ├── log
│ │ │ └── HandlerReporter.java
│ │ │ ├── validation
│ │ │ └── string
│ │ │ │ ├── StringValidator.java
│ │ │ │ ├── StringValidationException.java
│ │ │ │ ├── TokenStringValidatorFactory.java
│ │ │ │ └── MultiStringValidator.java
│ │ │ ├── perform
│ │ │ └── Executor.java
│ │ │ ├── ResidentHandler.java
│ │ │ ├── messages
│ │ │ ├── MessageLookup.java
│ │ │ └── HandlerMessages.java
│ │ │ ├── exception
│ │ │ └── ExceptionUtils.java
│ │ │ ├── progress
│ │ │ └── reporter
│ │ │ │ └── operation
│ │ │ │ └── OperationProgressConsumer.java
│ │ │ ├── translator
│ │ │ └── PayloadTranslator.java
│ │ │ └── reporter
│ │ │ └── ProgressReporter.java
│ │ └── resources
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── handler
│ │ └── handlerMessages.properties
├── handler-sample
│ ├── README.md
│ ├── api
│ │ ├── README.md
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── handler
│ │ │ └── sample
│ │ │ └── api
│ │ │ ├── SampleActions.java
│ │ │ ├── ActionParamKeys.java
│ │ │ ├── SampleAction.java
│ │ │ └── SampleInput.java
│ ├── package
│ │ ├── local
│ │ │ ├── lastProgress.json
│ │ │ ├── payload-local.json
│ │ │ ├── payload.json
│ │ │ ├── config
│ │ │ │ ├── external.properties
│ │ │ │ ├── external-minikube.properties
│ │ │ │ └── configMap.yaml
│ │ │ └── payload-local-multi.json
│ │ └── env.list
│ ├── impl
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── handler
│ │ │ └── sample
│ │ │ └── impl
│ │ │ ├── executor
│ │ │ ├── ExternalExecutorFactory.java
│ │ │ └── BaseExternalExecutor.java
│ │ │ ├── exception
│ │ │ └── SampleHandlerException.java
│ │ │ ├── context
│ │ │ └── OperationContext.java
│ │ │ ├── progress
│ │ │ └── SampleJobInfo.java
│ │ │ └── action
│ │ │ ├── LogAction.java
│ │ │ ├── ExceptionAction.java
│ │ │ └── ActionMap.java
│ └── pom.xml
├── handler-puller
│ ├── package
│ │ ├── env.list
│ │ ├── run.sh
│ │ ├── dockerRun.sh
│ │ └── local
│ │ │ └── config
│ │ │ └── registry.json
│ ├── impl
│ │ └── src
│ │ │ ├── main
│ │ │ ├── resources
│ │ │ │ └── NoopAgenda.json
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── comcast
│ │ │ │ └── pop
│ │ │ │ └── handler
│ │ │ │ └── puller
│ │ │ │ └── impl
│ │ │ │ ├── limit
│ │ │ │ ├── ResourceChecker.java
│ │ │ │ └── ResourceCheckerFactory.java
│ │ │ │ ├── monitor
│ │ │ │ └── alive
│ │ │ │ │ └── AliveCheck.java
│ │ │ │ ├── executor
│ │ │ │ ├── LauncherFactory.java
│ │ │ │ ├── BaseLauncher.java
│ │ │ │ ├── kubernetes
│ │ │ │ │ └── KubernetesConstants.java
│ │ │ │ └── local
│ │ │ │ │ └── LocalOperationLauncherFactory.java
│ │ │ │ ├── exception
│ │ │ │ └── PullerException.java
│ │ │ │ └── context
│ │ │ │ └── ExecutionContext.java
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── handler
│ │ │ └── puller
│ │ │ └── impl
│ │ │ └── PullerExecutionTest.java
│ └── pom.xml
├── handler-pod-reaper
│ ├── package
│ │ ├── local
│ │ │ └── config
│ │ │ │ ├── external.properties
│ │ │ │ └── external-prod.properties
│ │ ├── env.list
│ │ ├── run.sh
│ │ └── dockerRun.sh
│ ├── impl
│ │ └── src
│ │ │ ├── main
│ │ │ ├── resources
│ │ │ │ └── com
│ │ │ │ │ └── comcast
│ │ │ │ │ └── pop
│ │ │ │ │ └── handler
│ │ │ │ │ └── executor
│ │ │ │ │ └── reaperMessages.properties
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── comcast
│ │ │ │ └── pop
│ │ │ │ └── handler
│ │ │ │ └── reaper
│ │ │ │ └── impl
│ │ │ │ ├── kubernetes
│ │ │ │ └── KubernetesPodFacade.java
│ │ │ │ ├── property
│ │ │ │ └── ReaperProperty.java
│ │ │ │ └── context
│ │ │ │ └── ReaperContext.java
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── handler
│ │ │ └── reaper
│ │ │ └── impl
│ │ │ ├── messages
│ │ │ └── ReaperMessagesTest.java
│ │ │ └── ReaperTestUtil.java
│ └── pom.xml
└── handler-kubernetes-support
│ └── src
│ ├── main
│ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── handler
│ │ └── kubernetes
│ │ └── support
│ │ ├── config
│ │ ├── KubeConfigFactory.java
│ │ ├── NfsDetailsFactory.java
│ │ ├── ConfigurePod.java
│ │ ├── NfsDetailsField.java
│ │ ├── PodConfigFactory.java
│ │ ├── KubeConfigArgument.java
│ │ └── KubeConfigField.java
│ │ ├── podconfig
│ │ └── client
│ │ │ └── registry
│ │ │ └── PodConfigRegistryClient.java
│ │ ├── reporter
│ │ └── KubernetesReporterSet.java
│ │ └── payload
│ │ ├── compression
│ │ ├── CompressedPayloadField.java
│ │ └── CompressedEnvironmentPayloadUtil.java
│ │ └── PayloadField.java
│ └── test
│ └── resources
│ ├── defaultConfigMap.json
│ ├── testConfigMap_BaseConfigMap.json
│ └── testConfigMap.json
├── web-ui
├── src
│ └── main
│ │ └── resources
│ │ ├── content
│ │ └── welcome.html
│ │ ├── css
│ │ ├── liquidFillGuage.css
│ │ ├── fonts
│ │ │ ├── IcoMoon.eot
│ │ │ ├── IcoMoon.ttf
│ │ │ ├── IcoMoon.woff
│ │ │ └── icomoon-license.txt
│ │ ├── rotate.css
│ │ └── opensans.css
│ │ ├── favicon.ico
│ │ ├── images
│ │ ├── fission.png
│ │ ├── babs_head.png
│ │ ├── fission_logo.png
│ │ ├── green_status.png
│ │ └── fission_logo_2.png
│ │ ├── overview
│ │ └── images
│ │ │ ├── checkbox-checked.png
│ │ │ ├── checkbox-unchecked.png
│ │ │ └── attachments
│ │ │ ├── 226435023
│ │ │ ├── DFHDesign.jpg
│ │ │ └── Fission-Brain.jpg
│ │ │ ├── 226435076
│ │ │ └── Fission-ResourcePool-2.jpg
│ │ │ └── 236273638
│ │ │ └── fission-simple.png
│ │ ├── assembly
│ │ └── bin.xml
│ │ └── js
│ │ ├── util.js
│ │ ├── content
│ │ └── login.js
│ │ ├── popup.js
│ │ └── loomConsole
│ │ └── console.d.ts
└── README
├── deploy
└── resourcepool
│ └── kubernetes
│ ├── setup
│ ├── pop-service-account.yaml
│ └── RoleBinding.yaml
│ └── configmap
│ ├── sample
│ └── ConfigMap.yaml
│ └── puller
│ └── Service.yaml
├── module
├── module-json-helper
│ └── src
│ │ ├── test
│ │ ├── resources
│ │ │ ├── context
│ │ │ │ ├── encode.context.json
│ │ │ │ ├── analysis.context.json
│ │ │ │ ├── reference.json
│ │ │ │ └── expectedResult.json
│ │ │ ├── testParams.json
│ │ │ ├── testReferences.json
│ │ │ └── testExpectedResult.json
│ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── modules
│ │ │ └── jsonhelper
│ │ │ └── SampleObject.java
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── modules
│ │ └── jsonhelper
│ │ ├── replacement
│ │ └── JsonNodeReplacer.java
│ │ └── JsonHelperException.java
├── module-monitor
│ ├── main
│ │ └── src
│ │ │ └── main
│ │ │ ├── resources
│ │ │ └── service.properties
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── modules
│ │ │ └── monitor
│ │ │ ├── alive
│ │ │ ├── AliveCheck.java
│ │ │ ├── AliveCheckListener.java
│ │ │ └── LogAliveCheckListener.java
│ │ │ ├── alert
│ │ │ ├── AlertSender.java
│ │ │ ├── AlertMessage.java
│ │ │ ├── AlertLevel.java
│ │ │ └── AlertException.java
│ │ │ ├── config
│ │ │ ├── ConfigKeys.java
│ │ │ └── converter
│ │ │ │ ├── ConfigPropertyConverter.java
│ │ │ │ └── StringArrayPropertyConverter.java
│ │ │ └── metric
│ │ │ ├── MetricLabel.java
│ │ │ └── MetricReporterFactory.java
│ ├── graphite
│ │ └── src
│ │ │ └── main
│ │ │ └── resources
│ │ │ └── service.properties
│ └── pom.xml
├── module-xml-helper
│ └── src
│ │ ├── test
│ │ └── resources
│ │ │ └── basic.xml
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── modules
│ │ └── xmlhelper
│ │ └── XmlSearchException.java
├── module-queue-api
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── modules
│ │ └── queue
│ │ └── api
│ │ ├── ItemQueueFactory.java
│ │ └── access
│ │ ├── ItemQueueViewer.java
│ │ └── ItemQueueWriter.java
├── module-persistence
│ ├── api
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── persistence
│ │ │ └── api
│ │ │ ├── field
│ │ │ ├── DataField.java
│ │ │ ├── IdField.java
│ │ │ ├── FieldsField.java
│ │ │ ├── CountField.java
│ │ │ ├── LimitField.java
│ │ │ └── DataObjectField.java
│ │ │ ├── PersistentObjectConverter.java
│ │ │ ├── PersistenceException.java
│ │ │ └── ObjectPersisterFactory.java
│ ├── aws
│ │ ├── dynamodb
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── comcast
│ │ │ │ └── pop
│ │ │ │ └── persistence
│ │ │ │ └── aws
│ │ │ │ └── dynamodb
│ │ │ │ ├── AWSDynamoDBFactory.java
│ │ │ │ └── retrieve
│ │ │ │ └── DynamoObjectRetrieverFactory.java
│ │ └── pom.xml
│ └── pom.xml
├── module-kube-client
│ ├── test
│ │ └── main
│ │ │ └── src
│ │ │ └── main
│ │ │ ├── resources
│ │ │ └── dev.properties
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── modules
│ │ │ └── kube
│ │ │ └── fabric8
│ │ │ └── test
│ │ │ ├── PodConfigCreator.java
│ │ │ └── factory
│ │ │ └── ConfigFactory.java
│ ├── fabric8
│ │ └── src
│ │ │ ├── main
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── comcast
│ │ │ │ └── pop
│ │ │ │ └── modules
│ │ │ │ └── kube
│ │ │ │ └── fabric8
│ │ │ │ └── client
│ │ │ │ ├── modulator
│ │ │ │ └── HiLowCpuRequestModulation.java
│ │ │ │ ├── watcher
│ │ │ │ └── PodEventListener.java
│ │ │ │ ├── facade
│ │ │ │ ├── PodResourceFacadeFactory.java
│ │ │ │ ├── RetryablePodResourceFacadeFactory.java
│ │ │ │ └── PodResourceFacade.java
│ │ │ │ ├── exception
│ │ │ │ ├── PodNotScheduledException.java
│ │ │ │ └── PodException.java
│ │ │ │ └── factory
│ │ │ │ └── PodPushClientFactory.java
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── modules
│ │ │ └── kube
│ │ │ └── fabric8
│ │ │ └── client
│ │ │ └── watcher
│ │ │ └── PodPhaseTest.java
│ ├── api
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── modules
│ │ │ └── kube
│ │ │ └── client
│ │ │ ├── CpuRequestModulator.java
│ │ │ ├── LogLineAccumulator.java
│ │ │ ├── logging
│ │ │ └── LogLineObserver.java
│ │ │ └── config
│ │ │ └── KeyPathPair.java
│ └── pom.xml
├── module-queue-aws-sqs
│ ├── impl
│ │ └── src
│ │ │ ├── main
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── comcast
│ │ │ │ └── pop
│ │ │ │ └── modules
│ │ │ │ └── queue
│ │ │ │ └── aws
│ │ │ │ └── sqs
│ │ │ │ ├── AmazonSQSClientFactory.java
│ │ │ │ ├── processor
│ │ │ │ └── SQSRequestProcessor.java
│ │ │ │ └── AmazonSQSClientFactoryImpl.java
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── modules
│ │ │ └── queue
│ │ │ └── aws
│ │ │ └── sqs
│ │ │ └── SQSItemQueueTestString.java
│ ├── api
│ │ ├── src
│ │ │ └── main
│ │ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── comcast
│ │ │ │ └── pop
│ │ │ │ └── modules
│ │ │ │ └── queue
│ │ │ │ └── aws
│ │ │ │ └── sqs
│ │ │ │ └── api
│ │ │ │ ├── QueueRequestArgument.java
│ │ │ │ └── QueueRequestType.java
│ │ └── pom.xml
│ └── pom.xml
├── module-test-cleanup
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── test
│ │ └── cleanup
│ │ └── endpoint
│ │ └── IdentifiedObjectCreateListener.java
├── module-process-helper
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── process
│ │ │ └── helper
│ │ │ └── StreamGobblerFactory.java
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── process
│ │ └── helper
│ │ └── ProcessHelperTest.java
├── module-docker
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── module
│ │ └── docker
│ │ ├── elastic
│ │ └── InstanceRegulatorClient.java
│ │ └── exception
│ │ └── DockerException.java
├── module-producer-consumer-util
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── modules
│ │ └── sync
│ │ └── util
│ │ ├── Consumer.java
│ │ ├── Producer.java
│ │ └── ProducerResult.java
├── module-http-api
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── http
│ │ └── api
│ │ └── HTTPClientConfig.java
└── module-compression
│ ├── pom.xml
│ └── src
│ └── test
│ └── java
│ └── com
│ └── comcast
│ └── pop
│ └── compression
│ └── zlib
│ └── ZlibUtilTest.java
├── .gitignore
├── api
├── main
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── api
│ │ │ ├── params
│ │ │ ├── ParamKey.java
│ │ │ ├── TextParamKey.java
│ │ │ ├── CredentialParamKey.java
│ │ │ ├── FileParamKey.java
│ │ │ ├── GeneralParamKey.java
│ │ │ ├── AudioParamKey.java
│ │ │ └── VideoParamKey.java
│ │ │ ├── facility
│ │ │ ├── SchedulingAlgorithm.java
│ │ │ └── InsightMapper.java
│ │ │ ├── input
│ │ │ ├── InputFileResource.java
│ │ │ └── InputStream.java
│ │ │ ├── GlobalEndpointDataObject.java
│ │ │ ├── output
│ │ │ ├── OutputParamKey.java
│ │ │ ├── OutputStream.java
│ │ │ └── OutputFileResource.java
│ │ │ ├── progress
│ │ │ ├── ProcessingState.java
│ │ │ ├── WaitingStateMessage.java
│ │ │ └── CompleteStateMessage.java
│ │ │ ├── operation
│ │ │ └── OperationReference.java
│ │ │ ├── EndpointDataObject.java
│ │ │ ├── Stream.java
│ │ │ ├── tokens
│ │ │ └── AgendaToken.java
│ │ │ ├── EndpointDataObjectFeed.java
│ │ │ ├── AgendaInsight.java
│ │ │ └── FileResource.java
│ │ └── test
│ │ ├── resources
│ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── api
│ │ │ └── facility
│ │ │ ├── Customer.json
│ │ │ └── ResourcePool.json
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── api
│ │ └── params
│ │ ├── VideoParamKeyTest.java
│ │ └── AudioParamKeyTest.java
├── object-api
│ ├── src
│ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── object
│ │ │ └── api
│ │ │ ├── IdGenerator.java
│ │ │ ├── IdentifiedObject.java
│ │ │ └── UUIDGenerator.java
│ └── pom.xml
└── pom.xml
├── endpoint
├── endpoint-impl
│ └── src
│ │ ├── test
│ │ ├── resources
│ │ │ └── nodegraph
│ │ │ │ └── AgendaTemplateParameters.json
│ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── endpoint
│ │ │ ├── agenda
│ │ │ └── reporter
│ │ │ │ ├── TestAgendaProgressReporter.java
│ │ │ │ └── CaptureLogger.java
│ │ │ └── validation
│ │ │ └── BaseValidatorTest.java
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── endpoint
│ │ └── agenda
│ │ ├── reporter
│ │ └── Report.java
│ │ └── factory
│ │ ├── AgendaFactory.java
│ │ └── template
│ │ └── parameters
│ │ ├── DuplicateParameterException.java
│ │ └── MissingTemplateParameterException.java
├── endpoint-api
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── endpoint
│ │ └── api
│ │ ├── auth
│ │ ├── DataVisibility.java
│ │ └── CustomerIdAuthorizationResponse.java
│ │ ├── agenda
│ │ ├── RerunAgendaResponse.java
│ │ └── UpdateAgendaResponse.java
│ │ ├── ServiceResponse.java
│ │ ├── resourcepool
│ │ ├── UpdateAgendaProgressResponse.java
│ │ ├── CreateAgendaRequest.java
│ │ └── UpdateAgendaProgressRequest.java
│ │ ├── data
│ │ ├── DataObjectRequest.java
│ │ ├── DataObjectResponse.java
│ │ └── query
│ │ │ ├── ByFields.java
│ │ │ ├── ByCount.java
│ │ │ ├── ById.java
│ │ │ ├── resourcepool
│ │ │ └── insight
│ │ │ │ └── ByInsightId.java
│ │ │ ├── scheduling
│ │ │ └── ByAgendaId.java
│ │ │ └── ByTitle.java
│ │ ├── progress
│ │ └── ProgressSummaryRequest.java
│ │ ├── ObjectNotFoundException.java
│ │ ├── ValidationException.java
│ │ ├── BadRequestException.java
│ │ ├── UnauthorizedException.java
│ │ └── ServiceRequest.java
├── endpoint-base
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── endpoint
│ │ └── base
│ │ ├── visibility
│ │ ├── VisibilityMethod.java
│ │ ├── NoOpVisibilityFilter.java
│ │ └── VisibilityFilter.java
│ │ └── validation
│ │ └── RequestValidator.java
├── endpoint-functional-test
│ ├── src
│ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── comcast
│ │ │ │ └── pop
│ │ │ │ └── endpoint
│ │ │ │ └── test
│ │ │ │ └── messages
│ │ │ │ └── ValidationExceptionMessage.java
│ │ │ └── resources
│ │ │ ├── com
│ │ │ └── comcast
│ │ │ │ └── pop
│ │ │ │ └── endpoint
│ │ │ │ └── test
│ │ │ │ └── manual
│ │ │ │ └── sampleAgenda.json
│ │ │ └── test.properties
│ └── testng-functional.xml
├── endpoint-impl-aws
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ └── com
│ │ │ └── comcast
│ │ │ └── pop
│ │ │ └── endpoint
│ │ │ ├── persistence
│ │ │ ├── ParamsMapConverter.java
│ │ │ ├── DiagnosticEventArrayConverter.java
│ │ │ └── DateConverter.java
│ │ │ ├── agenda
│ │ │ └── aws
│ │ │ │ └── persistence
│ │ │ │ ├── PersistentAgendaConverter.java
│ │ │ │ ├── PersistentAgendaInsightConverter.java
│ │ │ │ ├── ListOperationsConverter.java
│ │ │ │ └── DynamoDBAgendaPersisterFactory.java
│ │ │ ├── agendatemplate
│ │ │ └── aws
│ │ │ │ └── persistence
│ │ │ │ ├── AgendaConverter.java
│ │ │ │ ├── PersistentAgendaTemplateConverter.java
│ │ │ │ └── DynamoDBAgendaTemplatePersisterFactory.java
│ │ │ ├── resourcepool
│ │ │ └── aws
│ │ │ │ └── persistence
│ │ │ │ ├── PersistentInsightConverter.java
│ │ │ │ ├── PersistentCustomerConverter.java
│ │ │ │ ├── PersistentResourcePoolConverter.java
│ │ │ │ ├── DynamoDBResourcePoolPersisterFactory.java
│ │ │ │ ├── DynamoDBInsightPersisterFactory.java
│ │ │ │ └── DynamoDBCustomerPersisterFactory.java
│ │ │ ├── progress
│ │ │ └── aws
│ │ │ │ └── persistence
│ │ │ │ ├── PersistentAgendaProgressConverter.java
│ │ │ │ └── DynamoDBAgendaProgressPersisterFactory.java
│ │ │ └── operationprogress
│ │ │ └── aws
│ │ │ └── persistence
│ │ │ └── PersistentOperationProgressConverter.java
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── endpoint
│ │ └── resourcepool
│ │ └── aws
│ │ └── persistence
│ │ └── PersistentInsightConverterTest.java
├── endpoint-impl-client
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── endpoint
│ │ └── client
│ │ ├── AgendaServiceClientFactory.java
│ │ ├── POPClientException.java
│ │ ├── ObjectClientException.java
│ │ ├── resourcepool
│ │ └── ResourcePoolEndpoint.java
│ │ ├── POPServiceClient.java
│ │ ├── ObjectClient.java
│ │ ├── HttpObjectClientFactory.java
│ │ └── ResourcePoolServiceClientFactory.java
└── endpoint-base-aws
│ └── src
│ └── main
│ └── java
│ └── com
│ └── comcast
│ └── pop
│ └── endpoint
│ └── aws
│ ├── EnvironmentFacade.java
│ └── JsonRequestStreamHandler.java
├── automated-retry
├── agenda-reclaimer-impl
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── agenda
│ │ └── reclaim
│ │ ├── factory
│ │ ├── AgendaProgressConsumerFactory.java
│ │ ├── AgendaProgressProducerFactory.java
│ │ └── AgendaReclaimerFactory.java
│ │ └── exception
│ │ └── ReclaimerException.java
├── callback-progress-retry-aws
│ └── impl
│ │ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── callback
│ │ └── progress
│ │ └── retry
│ │ └── AgendaProgressProcessorFactory.java
└── pom.xml
├── authorization
├── authorizer-sample-aws
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── auth
│ │ └── aws
│ │ └── response
│ │ ├── LambdaInvokeAction.java
│ │ └── PolicyContext.java
└── pom.xml
├── scheduling
├── scheduling-api
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── scheduling
│ │ └── api
│ │ └── AgendaInfo.java
├── scheduling-master-aws
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── scheduling
│ │ └── master
│ │ └── aws
│ │ └── SchedulerRequest.java
├── scheduling-queue-aws
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── scheduling
│ │ └── queue
│ │ └── aws
│ │ └── persistence
│ │ └── PersistentInsightScheduleInfoConverter.java
├── scheduling-queue-impl
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── scheduling
│ │ └── queue
│ │ └── algorithm
│ │ └── AgendaScheduler.java
├── scheduling-monitor-impl
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── comcast
│ │ └── pop
│ │ └── scheduling
│ │ └── monitor
│ │ └── QueueMetricMonitorFactory.java
└── scheduling-monitor-aws
│ └── src
│ └── main
│ └── java
│ └── com
│ └── comcast
│ └── pop
│ └── scheduling
│ └── monitor
│ └── aws
│ └── ResourcePoolMonitorRequest.java
└── data-reaping
├── pom.xml
└── data-object-reaper-aws
└── src
└── main
└── java
└── com
└── comcast
└── pop
└── reaper
└── objects
└── aws
└── BaseBatchedOperation.java
/handler/handler-executor/package/Dockerfile:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/web-ui/src/main/resources/content/welcome.html:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/handler/handler-base/src/test/resources/com/comcast/pop/handler/base/messages/test.json:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/handler/handler-sample/README.md:
--------------------------------------------------------------------------------
1 | # pop-handler-sample-impl
2 |
3 | Sibling: pop-handler-sample-api
--------------------------------------------------------------------------------
/handler/handler-puller/package/env.list:
--------------------------------------------------------------------------------
1 | LOG_LEVEL=DEBUG
2 | OATH_CERT=
3 | OATH_TOKEN=
4 | CID=theCid
--------------------------------------------------------------------------------
/handler/handler-sample/api/README.md:
--------------------------------------------------------------------------------
1 | # pop-handler-sample-api
2 |
3 | Sibling: pop-handler-sample-impl
4 |
--------------------------------------------------------------------------------
/handler/handler-sample/package/local/lastProgress.json:
--------------------------------------------------------------------------------
1 | {
2 | "params":{
3 | "jobInfo":{"jobId":"123456-987654"}
4 | }
5 | }
--------------------------------------------------------------------------------
/deploy/resourcepool/kubernetes/setup/pop-service-account.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: ServiceAccount
3 | metadata:
4 | name: pop-service
--------------------------------------------------------------------------------
/module/module-json-helper/src/test/resources/context/encode.context.json:
--------------------------------------------------------------------------------
1 | {
2 | "stats":
3 | {
4 | "encodeTime":4560
5 | }
6 | }
--------------------------------------------------------------------------------
/web-ui/src/main/resources/css/liquidFillGuage.css:
--------------------------------------------------------------------------------
1 | .liquidFillGaugeText {
2 | font-family: Helvetica;
3 | font-weight: bold;
4 | }
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.log
2 | target/
3 | *.iml
4 | .idea/
5 | .DS_Store
6 | ._*
7 | dependency-reduced-pom.xml
8 | deploy/endpoint/aws/binaries
9 |
--------------------------------------------------------------------------------
/web-ui/src/main/resources/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/favicon.ico
--------------------------------------------------------------------------------
/handler/handler-base/src/test/resources/com/comcast/pop/handler/base/messages/test.properties:
--------------------------------------------------------------------------------
1 | sample_message=hello world!
2 | sample_arg_message=hello {0}
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/package/local/config/external.properties:
--------------------------------------------------------------------------------
1 | pop.kubernetes.masterUrl=
2 | pop.kubernetes.namespace=pop
3 |
4 | pod.reap.age.minutes=320
--------------------------------------------------------------------------------
/web-ui/src/main/resources/images/fission.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/images/fission.png
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/package/local/config/external-prod.properties:
--------------------------------------------------------------------------------
1 | pop.kubernetes.masterUrl=
2 | pop.kubernetes.namespace=pop
3 |
4 | pod.reap.age.minutes=320
--------------------------------------------------------------------------------
/module/module-json-helper/src/test/resources/context/analysis.context.json:
--------------------------------------------------------------------------------
1 | {
2 | "streamProperties":
3 | {
4 | "width":720,
5 | "height":480
6 | }
7 | }
--------------------------------------------------------------------------------
/web-ui/src/main/resources/css/fonts/IcoMoon.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/css/fonts/IcoMoon.eot
--------------------------------------------------------------------------------
/web-ui/src/main/resources/css/fonts/IcoMoon.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/css/fonts/IcoMoon.ttf
--------------------------------------------------------------------------------
/web-ui/src/main/resources/images/babs_head.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/images/babs_head.png
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/resources/service.properties:
--------------------------------------------------------------------------------
1 |
2 | alive.check.enabled=false
3 | alive.check.frequency=1000
4 |
5 | logging.metric.report.frequency=500
--------------------------------------------------------------------------------
/web-ui/src/main/resources/css/fonts/IcoMoon.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/css/fonts/IcoMoon.woff
--------------------------------------------------------------------------------
/web-ui/src/main/resources/css/fonts/icomoon-license.txt:
--------------------------------------------------------------------------------
1 | Icon Set: IcoMoon Ultimate -- http://icomoon.io/
2 | License: Royalty Free -- http://icomoon.io/#icons/license
3 |
--------------------------------------------------------------------------------
/web-ui/src/main/resources/images/fission_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/images/fission_logo.png
--------------------------------------------------------------------------------
/web-ui/src/main/resources/images/green_status.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/images/green_status.png
--------------------------------------------------------------------------------
/web-ui/src/main/resources/images/fission_logo_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/images/fission_logo_2.png
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/params/ParamKey.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.params;
2 |
3 | public interface ParamKey
4 | {
5 | public String getKey();
6 | }
7 |
--------------------------------------------------------------------------------
/api/object-api/src/main/java/com/comcast/pop/object/api/IdGenerator.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.object.api;
2 |
3 | public interface IdGenerator
4 | {
5 | String generate();
6 | }
7 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/main/resources/NoopAgenda.json:
--------------------------------------------------------------------------------
1 | {
2 | "id": "theAgenda",
3 | "params": {
4 | "param.1": "one",
5 | "param.2": "two"
6 | },
7 | "operations": []
8 | }
--------------------------------------------------------------------------------
/web-ui/src/main/resources/overview/images/checkbox-checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/overview/images/checkbox-checked.png
--------------------------------------------------------------------------------
/endpoint/endpoint-impl/src/test/resources/nodegraph/AgendaTemplateParameters.json:
--------------------------------------------------------------------------------
1 | {
2 | "sourceFile": {
3 | "file": "coolestdog.mp4"
4 | },
5 | "rawsData": "This is RAWS Data"
6 | }
--------------------------------------------------------------------------------
/web-ui/src/main/resources/overview/images/checkbox-unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/overview/images/checkbox-unchecked.png
--------------------------------------------------------------------------------
/api/main/src/test/resources/com/comcast/pop/api/facility/Customer.json:
--------------------------------------------------------------------------------
1 | {"id":"982048329048239jfkdsl","billingCode":"My billing code","title":"babs account","availableInsightIds":["9384932rfdiofjwoiejf"]}
2 |
--------------------------------------------------------------------------------
/module/module-xml-helper/src/test/resources/basic.xml:
--------------------------------------------------------------------------------
1 |
2 | 45
3 |
4 | data
5 |
6 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/facility/SchedulingAlgorithm.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.facility;
2 |
3 | public enum SchedulingAlgorithm
4 | {
5 | RoundRobin,
6 | FirstInFirstOut
7 | }
8 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/payload/PayloadReader.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.payload;
2 |
3 | public interface PayloadReader
4 | {
5 | String readPayload();
6 | }
7 |
--------------------------------------------------------------------------------
/web-ui/src/main/resources/css/rotate.css:
--------------------------------------------------------------------------------
1 | .rotate{
2 | transform-origin:50% 50%;
3 | animation:2s rotateRight infinite linear;
4 | }
5 |
6 | @keyframes rotateRight{
7 | 100%{ transform:rotate(360deg); }
8 | }
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/auth/DataVisibility.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.auth;
2 |
3 | public enum DataVisibility
4 | {
5 | authorized_account,
6 | global
7 | }
8 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/processor/HandlerMetadata.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.processor;
2 |
3 |
4 | public enum HandlerMetadata
5 | {
6 | RequestedCPUs;
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/resources/com/comcast/pop/handler/handlerMessages.properties:
--------------------------------------------------------------------------------
1 | general_handler_error=An unknown error has occurred with operation: {0}
2 | payload_translation_fail=Failed to translate payload to {0}.
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/alive/AliveCheck.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.alive;
2 |
3 | public interface AliveCheck
4 | {
5 | public boolean isAlive();
6 | }
7 |
--------------------------------------------------------------------------------
/web-ui/src/main/resources/overview/images/attachments/226435023/DFHDesign.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/overview/images/attachments/226435023/DFHDesign.jpg
--------------------------------------------------------------------------------
/endpoint/endpoint-base/src/main/java/com/comcast/pop/endpoint/base/visibility/VisibilityMethod.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.base.visibility;
2 |
3 | public enum VisibilityMethod
4 | {
5 | GET,PUT,POST,DELETE;
6 | }
7 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/field/api/LaunchType.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.field.api;
2 |
3 | public enum LaunchType
4 | {
5 | local,
6 | docker,
7 | kubernetes
8 | }
9 |
--------------------------------------------------------------------------------
/module/module-monitor/graphite/src/main/resources/service.properties:
--------------------------------------------------------------------------------
1 |
2 | graphite.path=1m.lab.main.t.aort.fh.t01
3 | graphite.endpoint=
4 | graphite.port=2003
5 | graphite.report.frequency=5000
6 |
7 | alive.check.frequency=2000
--------------------------------------------------------------------------------
/handler/handler-executor/package/env.list:
--------------------------------------------------------------------------------
1 | LOG_LEVEL=DEBUG
2 | OATH_CERT=
3 | OATH_TOKEN=
4 | PAYLOAD={"id":"theAgenda","params":{"param.1":"one","param.2":"two"},"operations":[{"id":"analysis"},{"id":"accelerateFilter"}]}
5 | CID=theCid
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/package/env.list:
--------------------------------------------------------------------------------
1 | LOG_LEVEL=DEBUG
2 | OATH_CERT=
3 | OATH_TOKEN=
4 | PAYLOAD={"id":"theAgenda","params":{"param.1":"one","param.2":"two"},"operations":[{"id":"analysis"},{"id":"accelerateFilter"}]}
5 | CID=theCid
--------------------------------------------------------------------------------
/web-ui/src/main/resources/overview/images/attachments/226435023/Fission-Brain.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/overview/images/attachments/226435023/Fission-Brain.jpg
--------------------------------------------------------------------------------
/web-ui/src/main/resources/overview/images/attachments/236273638/fission-simple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/overview/images/attachments/236273638/fission-simple.png
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/field/retriever/api/NamedField.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.field.retriever.api;
2 |
3 | public interface NamedField
4 | {
5 | String getFieldName();
6 | }
7 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/payload/PayloadReaderFactory.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.payload;
2 |
3 | public interface PayloadReaderFactory
4 | {
5 | PayloadReader createReader();
6 | }
7 |
--------------------------------------------------------------------------------
/handler/handler-base/src/test/java/com/comast/pop/handler/base/progress/reporter/TestConfig.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.progress.reporter;
2 |
3 | public class TestConfig extends BaseReporterThreadConfig
4 | {
5 | }
6 |
--------------------------------------------------------------------------------
/handler/handler-sample/api/src/main/java/com/comcast/pop/handler/sample/api/SampleActions.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.api;
2 |
3 | public enum SampleActions
4 | {
5 | log,
6 | exception,
7 | externalExecute
8 | }
9 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/input/InputFileResource.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.input;
2 |
3 | import com.comcast.pop.api.AbstractFileResource;
4 |
5 | public class InputFileResource extends AbstractFileResource
6 | {
7 | }
8 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/field/api/args/CommandLineArgument.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.field.api.args;
2 |
3 | public interface CommandLineArgument
4 | {
5 | String getArgumentName();
6 | }
7 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/payload/PayloadWriterFactory.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.payload;
2 |
3 | public interface PayloadWriterFactory
4 | {
5 | PayloadWriter createWriter(T param);
6 | }
7 |
--------------------------------------------------------------------------------
/module/module-json-helper/src/test/resources/context/reference.json:
--------------------------------------------------------------------------------
1 | {
2 | "someitem":
3 | {
4 | "field1":"@",
5 | "field2":"@",
6 | "field3":["@", "someText", {"nested":"@"}, 4]
7 | }
8 | }
--------------------------------------------------------------------------------
/module/module-queue-api/src/main/java/com/comcast/pop/modules/queue/api/ItemQueueFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.queue.api;
2 |
3 | public interface ItemQueueFactory
4 | {
5 | ItemQueue createItemQueue(String name);
6 | }
7 |
--------------------------------------------------------------------------------
/web-ui/src/main/resources/overview/images/attachments/226435076/Fission-ResourcePool-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Comcast/Priority-Operation-Processing/HEAD/web-ui/src/main/resources/overview/images/attachments/226435076/Fission-ResourcePool-2.jpg
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/shutdown/ShutdownProcessor.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.shutdown;
2 |
3 | public interface ShutdownProcessor
4 | {
5 | void shutdown();
6 | }
7 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/main/java/com/comcast/pop/handler/puller/impl/limit/ResourceChecker.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.puller.impl.limit;
2 |
3 | public interface ResourceChecker
4 | {
5 | boolean areResourcesAvailable();
6 | }
7 |
--------------------------------------------------------------------------------
/module/module-persistence/api/src/main/java/com/comcast/pop/persistence/api/field/DataField.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.api.field;
2 |
3 | public interface DataField
4 | {
5 | String name();
6 | boolean isMatch(String fieldName);
7 | }
8 |
--------------------------------------------------------------------------------
/api/main/src/test/resources/com/comcast/pop/api/facility/ResourcePool.json:
--------------------------------------------------------------------------------
1 | {
2 | "id": "2u9490283912832109283091",
3 | "title": "CTS Seattle",
4 | "ownerId": "my.resource.pool.user@site.com",
5 | "insightIds": [
6 | "9384932rfdiofjwoiejf"
7 | ]
8 | }
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/field/api/args/MetaData.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.field.api.args;
2 |
3 | import java.util.Map;
4 |
5 | public interface MetaData
6 | {
7 | Map getMetadata();
8 | }
9 |
--------------------------------------------------------------------------------
/module/module-kube-client/test/main/src/main/resources/dev.properties:
--------------------------------------------------------------------------------
1 | kubernetesMaster=
2 | kubernetesNamespace=pop
3 | tfmhost=
4 |
5 | #nfs settings
6 | nfs.server=
7 | nfs.serverPath=/
8 | nfs.mountPath=/testFiles
9 |
10 | #test configmap
11 | configMap=
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/alert/AlertSender.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.alert;
2 |
3 | public interface AlertSender
4 | {
5 | public void send(AlertMessage message) throws AlertException;
6 | }
7 |
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/alive/AliveCheckListener.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.alive;
2 |
3 | public interface AliveCheckListener
4 | {
5 | public void processAliveCheck(boolean isAlive);
6 | }
7 |
--------------------------------------------------------------------------------
/handler/handler-executor/api/src/main/java/com/comcast/pop/handler/executor/api/ExecutorHandlerInput.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.api;
2 |
3 | import com.comcast.pop.api.Agenda;
4 |
5 | public class ExecutorHandlerInput extends Agenda
6 | {
7 | }
8 |
--------------------------------------------------------------------------------
/handler/handler-sample/package/env.list:
--------------------------------------------------------------------------------
1 | LOG_LEVEL=DEBUG
2 | OATH_CERT=
3 | OATH_TOKEN=
4 | PAYLOAD={"action":"log","paramsMap":{"sleepMilliseconds":4000,"logMessage":"This is a custom log message","exceptionMessage":"This is a custom exception message."}}
5 | CID=theCid
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/log/HandlerReporter.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.log;
2 |
3 | import java.util.Map;
4 |
5 | public interface HandlerReporter
6 | {
7 | void reportMetadata(Map metadata);
8 | }
9 |
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/config/ConfigKeys.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.config;
2 |
3 | import java.util.Set;
4 |
5 | public interface ConfigKeys
6 | {
7 | Set getKeys();
8 | }
9 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/main/java/com/comcast/pop/handler/puller/impl/monitor/alive/AliveCheck.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.puller.impl.monitor.alive;
2 |
3 | public interface AliveCheck
4 | {
5 | boolean isAlive();
6 | String getNotAliveString();
7 | }
8 |
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/alert/AlertMessage.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.alert;
2 |
3 | public interface AlertMessage
4 | {
5 | public AlertLevel getLevel();
6 | public void setLevel(AlertLevel level);
7 | }
8 |
--------------------------------------------------------------------------------
/handler/handler-executor/package/local/config/external.properties:
--------------------------------------------------------------------------------
1 | pop.kubernetes.masterUrl=
2 | pop.kubernetes.namespace=pop
3 |
4 | # multi-threaded executor settings
5 | operation.conductor.threadpool.size=50
6 |
7 | # use the StaticPodConfigRegistryClient
8 | useStaticRegistryClient=true
--------------------------------------------------------------------------------
/module/module-kube-client/fabric8/src/main/java/com/comcast/pop/modules/kube/fabric8/client/modulator/HiLowCpuRequestModulation.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.client.modulator;
2 |
3 | /**
4 | *
5 | */
6 | public enum HiLowCpuRequestModulation
7 | {
8 | LOW, HI
9 | }
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/metric/MetricLabel.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.metric;
2 |
3 | public enum MetricLabel
4 | {
5 | duration,
6 | deleted,
7 | failed,
8 | failureCount,
9 | succeeded
10 | }
11 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/params/TextParamKey.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.params;
2 |
3 | public enum TextParamKey implements ParamKey
4 | {
5 | languageCode, intent;
6 |
7 | public String getKey()
8 | {
9 | return this.name();
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/params/CredentialParamKey.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.params;
2 |
3 | public enum CredentialParamKey implements ParamKey
4 | {
5 | username, password;
6 |
7 | public String getKey()
8 | {
9 | return this.name();
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/main/java/com/comcast/pop/handler/puller/impl/limit/ResourceCheckerFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.puller.impl.limit;
2 |
3 | import java.util.List;
4 |
5 | public interface ResourceCheckerFactory
6 | {
7 | List getResourceCheckers();
8 | }
9 |
--------------------------------------------------------------------------------
/module/module-queue-aws-sqs/impl/src/main/java/com/comcast/pop/modules/queue/aws/sqs/AmazonSQSClientFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.queue.aws.sqs;
2 |
3 | import com.amazonaws.services.sqs.AmazonSQS;
4 |
5 | public interface AmazonSQSClientFactory
6 | {
7 | AmazonSQS createClient();
8 | }
9 |
--------------------------------------------------------------------------------
/api/object-api/src/main/java/com/comcast/pop/object/api/IdentifiedObject.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.object.api;
2 |
3 | public interface IdentifiedObject
4 | {
5 | String getId();
6 | void setId(String id);
7 | String getCustomerId();
8 | void setCustomerId(String customerId);
9 | }
10 |
--------------------------------------------------------------------------------
/module/module-kube-client/fabric8/src/main/java/com/comcast/pop/modules/kube/fabric8/client/watcher/PodEventListener.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.client.watcher;
2 |
3 | import io.fabric8.kubernetes.client.Watcher;
4 |
5 | public interface PodEventListener extends Watcher
6 | {
7 | }
8 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/validation/string/StringValidator.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.validation.string;
2 |
3 | /**
4 | * Interface for all StringValidators
5 | */
6 | public interface StringValidator
7 | {
8 | void validate(String input);
9 | }
10 |
--------------------------------------------------------------------------------
/module/module-kube-client/api/src/main/java/com/comcast/pop/modules/kube/client/CpuRequestModulator.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.client;
2 |
3 | /**
4 | *
5 | */
6 | public interface CpuRequestModulator
7 | {
8 | public String getCpuRequest();
9 | public String getCpuLimit();
10 | }
11 |
--------------------------------------------------------------------------------
/module/module-queue-aws-sqs/api/src/main/java/com/comcast/pop/modules/queue/aws/sqs/api/QueueRequestArgument.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.queue.aws.sqs.api;
2 |
3 | /**
4 | * Possible arguments to pass with a queue request
5 | */
6 | public enum QueueRequestArgument
7 | {
8 | maxResults,
9 | }
10 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/payload/PayloadWriter.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.payload;
2 |
3 | /**
4 | * Writer for payload objects
5 | */
6 | public interface PayloadWriter
7 | {
8 | void writePayload(String payload);
9 | String getPayloadType();
10 | }
11 |
--------------------------------------------------------------------------------
/handler/handler-executor/package/local/config/external-minikube.properties:
--------------------------------------------------------------------------------
1 | pop.kubernetes.masterUrl=https://192.168.64.2:8443
2 | pop.kubernetes.namespace=pop
3 |
4 | # multi-threaded executor settings
5 | operation.conductor.threadpool.size=50
6 |
7 | # use the StaticPodConfigRegistryClient
8 | useStaticRegistryClient=true
--------------------------------------------------------------------------------
/automated-retry/agenda-reclaimer-impl/src/main/java/com/comcast/pop/agenda/reclaim/factory/AgendaProgressConsumerFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.agenda.reclaim.factory;
2 |
3 | import com.comcast.pop.modules.sync.util.Consumer;
4 |
5 | public interface AgendaProgressConsumerFactory
6 | {
7 | Consumer create();
8 | }
9 |
--------------------------------------------------------------------------------
/automated-retry/agenda-reclaimer-impl/src/main/java/com/comcast/pop/agenda/reclaim/factory/AgendaProgressProducerFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.agenda.reclaim.factory;
2 |
3 | import com.comcast.pop.modules.sync.util.Producer;
4 |
5 | public interface AgendaProgressProducerFactory
6 | {
7 | Producer create();
8 | }
9 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/perform/Executor.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.perform;
2 |
3 | /**
4 | * Interface for performing operations (primarily for the RetryableExecutor)
5 | * @param
6 | */
7 | public interface Executor
8 | {
9 | T execute() throws Exception;
10 | }
11 |
--------------------------------------------------------------------------------
/handler/handler-sample/package/local/payload-local.json:
--------------------------------------------------------------------------------
1 | {
2 | "actions": [
3 | {
4 | "action": "log",
5 | "paramsMap": {
6 | "sleepMilliseconds": 5000,
7 | "logMessage": "This is a custom log message"
8 | }
9 | }
10 | ],
11 | "resultPayload": {
12 | "data": "someData"
13 | }
14 | }
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/config/KubeConfigFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.config;
2 |
3 | import com.comcast.pop.modules.kube.client.config.KubeConfig;
4 |
5 | public interface KubeConfigFactory
6 | {
7 | KubeConfig createKubeConfig();
8 | }
9 |
--------------------------------------------------------------------------------
/module/module-queue-aws-sqs/api/src/main/java/com/comcast/pop/modules/queue/aws/sqs/api/QueueRequestType.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.queue.aws.sqs.api;
2 |
3 | /**
4 | * The type of request to perform on the queue
5 | */
6 | public enum QueueRequestType
7 | {
8 | add,
9 | poll,
10 | //peek,
11 | size,
12 | }
13 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/main/java/com/comcast/pop/handler/puller/impl/executor/LauncherFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.puller.impl.executor;
2 |
3 | import com.comcast.pop.handler.puller.impl.context.PullerContext;
4 |
5 | public interface LauncherFactory
6 | {
7 | BaseLauncher createLauncher(PullerContext pullerContext);
8 | }
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/field/api/HandlerField.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.field.api;
2 |
3 | public enum HandlerField
4 | {
5 | PAYLOAD,
6 | LAST_PROGRESS,
7 | CID,
8 | OPERATION_NAME,
9 | AGENDA_ID,
10 | OPERATION_ID,
11 | CUSTOMER_ID,
12 | PROGRESS_ID;
13 | }
14 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/GlobalEndpointDataObject.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api;
2 |
3 | import com.comcast.pop.object.api.IdentifiedObject;
4 |
5 | public interface GlobalEndpointDataObject extends IdentifiedObject
6 | {
7 | Boolean isGlobal();
8 | Boolean getIsGlobal();
9 | void setIsGlobal(Boolean global);
10 | }
11 |
--------------------------------------------------------------------------------
/web-ui/README:
--------------------------------------------------------------------------------
1 | Local Docker Apache image for testing: (localhost:8080)
2 | ----
3 | 1) navigate to the resources folder in the terminal
4 | 2) Run this command: docker run -p 8080:80 -v $(pwd):/usr/local/apache2/htdocs/ httpd:2.4
5 | 3) Browser: http://localhost:8080/
6 |
7 | Clean up old docker stuff (like non-running containers)
8 | ------
9 | docker system prune
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/agenda/RerunAgendaResponse.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.agenda;
2 |
3 | import com.comcast.pop.endpoint.api.DefaultServiceResponse;
4 |
5 | public class RerunAgendaResponse extends DefaultServiceResponse
6 | {
7 | public RerunAgendaResponse()
8 | {
9 | }
10 | }
11 |
12 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl/src/main/java/com/comcast/pop/endpoint/agenda/reporter/Report.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agenda.reporter;
2 |
3 | public interface Report
4 | {
5 | public static final String ADDED_KEY = "added";
6 | public static final String CONCLUSION_STATUS_KEY = "conclusion_status";
7 |
8 | V report(T object);
9 | }
10 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/ResidentHandler.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base;
2 |
3 | /**
4 | * Represents a handler that is executed directly as a class (no external launch to execute)
5 | */
6 | public interface ResidentHandler
7 | {
8 | String execute(ResidentHandlerParams residentHandlerParams);
9 | }
10 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/validation/string/StringValidationException.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.validation.string;
2 |
3 | public class StringValidationException extends RuntimeException
4 | {
5 | public StringValidationException(String message)
6 | {
7 | super(message);
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/config/NfsDetailsFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.config;
2 |
3 | import com.comcast.pop.modules.kube.client.config.NfsDetails;
4 |
5 | public interface NfsDetailsFactory
6 | {
7 | NfsDetails createNfsDetails(String propertyPrefix);
8 | }
9 |
--------------------------------------------------------------------------------
/handler/handler-puller/package/run.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ##########################################################################
4 | # Exports whatever variables are needed
5 |
6 |
7 | DOCKER_PROD=
8 | export DOCKER_PROD
9 | DOCKER_LAB=
10 | export DOCKER_LAB
11 |
12 | # build the image
13 | mvn -U clean install
14 |
15 | ./dockerRun.sh $@
16 |
--------------------------------------------------------------------------------
/module/module-kube-client/fabric8/src/main/java/com/comcast/pop/modules/kube/fabric8/client/facade/PodResourceFacadeFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.client.facade;
2 |
3 | public interface PodResourceFacadeFactory
4 | {
5 | PodResourceFacade create(KubernetesClientFacade kubernetesClientFacade, String namespace, String podName);
6 | }
7 |
--------------------------------------------------------------------------------
/module/module-persistence/api/src/main/java/com/comcast/pop/persistence/api/field/IdField.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.api.field;
2 |
3 |
4 | public class IdField extends DataObjectField
5 | {
6 | private static final String fieldName = "id";
7 |
8 | public IdField()
9 | {
10 | super(fieldName);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/module/module-test-cleanup/src/main/java/com/comcast/pop/test/cleanup/endpoint/IdentifiedObjectCreateListener.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.test.cleanup.endpoint;
2 |
3 | import com.comcast.pop.object.api.IdentifiedObject;
4 |
5 | /**
6 | */
7 | public interface IdentifiedObjectCreateListener
8 | {
9 | void objectCreated(IdentifiedObject dataObject);
10 | }
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/output/OutputParamKey.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.output;
2 |
3 | import com.comcast.pop.api.params.ParamKey;
4 |
5 | public enum OutputParamKey implements ParamKey
6 | {
7 | protectionScheme,
8 | format;
9 |
10 | public String getKey()
11 | {
12 | return this.name();
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/handler/handler-executor/package/run.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ##########################################################################
4 | # Exports whatever variables are ndeeded
5 |
6 |
7 | DOCKER_PROD=
8 | export DOCKER_PROD
9 | DOCKER_LAB=
10 | export DOCKER_LAB
11 |
12 | # build the image
13 | mvn -U clean install
14 |
15 | ./dockerRun.sh $@
16 |
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/impl/src/main/resources/com/comcast/pop/handler/executor/reaperMessages.properties:
--------------------------------------------------------------------------------
1 | #keys are lowercase, enums are whatever enums should be (upper case)
2 |
3 | no_pods_to_reap=No pods found for reaping.
4 | pod_delete_attempt=Attempting to delete pods: {0}
5 | pod_batch_reap_failed=Failed to reap a batch of pods. Continuing with next batch.
6 |
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/package/run.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ##########################################################################
4 | # Exports whatever variables are ndeeded
5 |
6 |
7 | DOCKER_PROD=
8 | export DOCKER_PROD
9 | DOCKER_LAB=
10 | export DOCKER_LAB
11 |
12 | # build the image
13 | mvn -U clean install
14 |
15 | ./dockerRun.sh $@
16 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/main/java/com/comcast/pop/handler/puller/impl/executor/BaseLauncher.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.puller.impl.executor;
2 |
3 | import com.comcast.pop.api.Agenda;
4 | import com.comcast.pop.api.progress.AgendaProgress;
5 |
6 | public interface BaseLauncher
7 | {
8 | void execute(Agenda agenda, AgendaProgress agendaProgress);
9 | }
--------------------------------------------------------------------------------
/web-ui/src/main/resources/assembly/bin.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | zip
5 |
6 |
7 |
8 | src/main/resources
9 | .
10 |
11 | **/*.*
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/authorization/authorizer-sample-aws/src/main/java/com/comcast/pop/auth/aws/response/LambdaInvokeAction.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.auth.aws.response;
2 |
3 | public class LambdaInvokeAction implements com.amazonaws.auth.policy.Action
4 | {
5 | @Override
6 | public String getActionName()
7 | {
8 | return "execute-api:Invoke";
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/ServiceResponse.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api;
2 |
3 | public interface ServiceResponse
4 | {
5 | T getErrorResponse();
6 |
7 | void setErrorResponse(T errorResponse);
8 |
9 | boolean isError();
10 |
11 | String getCID();
12 |
13 | void setCID(String cid);
14 | }
15 |
--------------------------------------------------------------------------------
/handler/handler-sample/package/local/payload.json:
--------------------------------------------------------------------------------
1 | {
2 | "actions": [
3 | {
4 | "action": "externalExecute",
5 | "paramsMap": {
6 | "externalArgs": [
7 | "ash",
8 | "-c",
9 | "ls",
10 | "-la"
11 | ]
12 | }
13 | }
14 | ],
15 | "resultPayload": {
16 | "data": "someData"
17 | }
18 | }
--------------------------------------------------------------------------------
/deploy/resourcepool/kubernetes/setup/RoleBinding.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: rbac.authorization.k8s.io/v1beta1
2 | kind: RoleBinding
3 | metadata:
4 | name: pop-edit-service
5 | namespace: pop
6 | roleRef:
7 | apiGroup: rbac.authorization.k8s.io
8 | kind: ClusterRole
9 | name: edit
10 | subjects:
11 | - kind: ServiceAccount
12 | name: pop-service
13 | namespace: pop
14 |
--------------------------------------------------------------------------------
/module/module-queue-aws-sqs/impl/src/main/java/com/comcast/pop/modules/queue/aws/sqs/processor/SQSRequestProcessor.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.queue.aws.sqs.processor;
2 |
3 | import com.comcast.pop.modules.queue.aws.sqs.SQSRequestContext;
4 |
5 | public interface SQSRequestProcessor
6 | {
7 | SQSQueueResult processRequest(SQSRequestContext sqsRequestContext);
8 | }
9 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/messages/MessageLookup.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.messages;
2 |
3 | /**
4 | * Interface for enums to use as a basis for looking up messages (see ResourceBundleStringRetriever)
5 | */
6 | public interface MessageLookup
7 | {
8 | String getMessage(Object... args);
9 | String getKey();
10 | }
11 |
--------------------------------------------------------------------------------
/module/module-process-helper/src/main/java/com/comcast/pop/process/helper/StreamGobblerFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.process.helper;
2 |
3 | import java.io.InputStream;
4 |
5 | public class StreamGobblerFactory
6 | {
7 | public StreamGobbler getStreamGobbler(InputStream inputStream)
8 | {
9 | return new StreamGobbler(inputStream);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/params/FileParamKey.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.params;
2 |
3 | public enum FileParamKey implements ParamKey
4 | {
5 | extension,
6 | externalFileId,
7 | fileSize,
8 | ldapOriginalPrefix,
9 | ldapRemappedPrefix;
10 |
11 | public String getKey()
12 | {
13 | return this.name();
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/progress/ProcessingState.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.progress;
2 |
3 | /**
4 | * waiting: waiting to start (pods or dependencies pending)
5 | * executing: actively processing
6 | * complete: completed (failed or succeeded)
7 | */
8 | public enum ProcessingState
9 | {
10 | WAITING,
11 | EXECUTING,
12 | COMPLETE
13 | }
14 |
--------------------------------------------------------------------------------
/api/object-api/src/main/java/com/comcast/pop/object/api/UUIDGenerator.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.object.api;
2 |
3 | import java.util.UUID;
4 |
5 | /**
6 | * ID Generator for Identified objects (UUID by default)
7 | */
8 | public class UUIDGenerator implements IdGenerator
9 | {
10 | public String generate()
11 | {
12 | return UUID.randomUUID().toString();
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/main/java/com/comcast/pop/handler/puller/impl/executor/kubernetes/KubernetesConstants.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.puller.impl.executor.kubernetes;
2 |
3 | public class KubernetesConstants
4 | {
5 | public static final String EXECEUTOR_INSIGHT_LABEL = "pop.insightId";
6 | public static final String EXECEUTOR_RESOURCEPOOL_LABEL = "pop.resourcePoolId";
7 | }
8 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl/src/main/java/com/comcast/pop/endpoint/agenda/factory/AgendaFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agenda.factory;
2 |
3 | import com.comcast.pop.api.Agenda;
4 | import com.comcast.pop.api.AgendaTemplate;
5 |
6 | public interface AgendaFactory
7 | {
8 | Agenda createAgendaFromObject(AgendaTemplate agendaTemplate, Object payload, String progressId, String cid);
9 | }
10 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/exception/ExceptionUtils.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.exception;
2 |
3 | import java.util.Arrays;
4 |
5 | public class ExceptionUtils
6 | {
7 | private ExceptionUtils(){}
8 |
9 | public static String getStackTraceString(Exception e)
10 | {
11 | return Arrays.toString(e.getStackTrace());
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/handler/handler-sample/impl/src/main/java/com/comcast/pop/handler/sample/impl/executor/ExternalExecutorFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.impl.executor;
2 |
3 | import com.comast.pop.handler.base.field.retriever.LaunchDataWrapper;
4 |
5 | public interface ExternalExecutorFactory
6 | {
7 | BaseExternalExecutor getExternalExecutor(LaunchDataWrapper launchDataWrapper, String[] commandLineArgs);
8 | }
--------------------------------------------------------------------------------
/api/main/src/test/java/com/comcast/pop/api/params/VideoParamKeyTest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.params;
2 |
3 | import org.testng.annotations.Test;
4 |
5 | public class VideoParamKeyTest extends BaseParamKeyTest
6 | {
7 | @Test
8 | public void testVideoParamKeyMatchesVideoStreamParams()
9 | {
10 | testParamKeysMatchParamsObject(VideoParamKey.values(), new VideoStreamParams());
11 | }
12 | }
--------------------------------------------------------------------------------
/module/module-json-helper/src/main/java/com/comcast/pop/modules/jsonhelper/replacement/JsonNodeReplacer.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.jsonhelper.replacement;
2 |
3 | import com.fasterxml.jackson.databind.JsonNode;
4 |
5 | /**
6 | * A JsonNode value replacer
7 | */
8 | public interface JsonNodeReplacer
9 | {
10 | void updateValue(String newValue);
11 | void updateValue(JsonNode newValue);
12 | }
13 |
--------------------------------------------------------------------------------
/api/main/src/test/java/com/comcast/pop/api/params/AudioParamKeyTest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.params;
2 |
3 | import org.testng.annotations.Test;
4 |
5 | public class AudioParamKeyTest extends BaseParamKeyTest
6 | {
7 | @Test
8 | public void testAudioParamKeyMatchesAudioStreamParams()
9 | {
10 | testParamKeysMatchParamsObject(AudioParamKey.values(), new AudioStreamParams());
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/metric/MetricReporterFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.metric;
2 |
3 | import com.codahale.metrics.MetricRegistry;
4 | import com.codahale.metrics.ScheduledReporter;
5 |
6 | public interface MetricReporterFactory
7 | {
8 | ScheduledReporter register(MetricRegistry registry);
9 | int getReportIntervalInMilli();
10 | }
11 |
--------------------------------------------------------------------------------
/module/module-persistence/api/src/main/java/com/comcast/pop/persistence/api/PersistentObjectConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.api;
2 |
3 | /**
4 | */
5 | public interface PersistentObjectConverter
6 | {
7 | Class getPersistentObjectClass();
8 | Class getDataObjectClass();
9 |
10 | S getPersistentObject(T dataObject);
11 |
12 | T getDataObject(S persistentObject);
13 | }
14 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/operation/OperationReference.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.operation;
2 |
3 | public enum OperationReference
4 | {
5 | OUTPUT(".out");
6 |
7 | private final String suffix;
8 |
9 | OperationReference(String suffix)
10 | {
11 | this.suffix = suffix;
12 | }
13 |
14 | public String getSuffix()
15 | {
16 | return suffix;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/processor/OperationWrapperFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.processor;
2 |
3 | import com.comcast.pop.api.operation.Operation;
4 |
5 | public class OperationWrapperFactory
6 | {
7 | public OperationWrapper create(Operation operation)
8 | {
9 | return new OperationWrapper(operation);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/module/module-kube-client/test/main/src/main/java/com/comcast/pop/modules/kube/fabric8/test/PodConfigCreator.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.test;
2 |
3 | import com.comcast.pop.modules.kube.client.config.PodConfig;
4 | import com.comcast.pop.modules.kube.fabric8.test.factory.ConfigFactory;
5 |
6 | public interface PodConfigCreator
7 | {
8 | PodConfig createPodConfig(ConfigFactory configFactory);
9 | }
10 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/EndpointDataObject.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api;
2 |
3 | import java.util.Date;
4 |
5 | public interface EndpointDataObject
6 | {
7 | public String getId();
8 |
9 | public String getCustomerId();
10 |
11 | public String getCid();
12 |
13 | public Date getUpdatedTime();
14 |
15 | public Date getAddedTime();
16 |
17 | public String getTitle();
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/processor/HandlerProcessor.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.processor;
2 |
3 | /**
4 | * Interface for a handler processor.
5 | *
6 | * TODO: consider making this an abstract that includes a constructor enforcing the use of a LaunchDataWrapper and BaseOperationContext
7 | */
8 | public interface HandlerProcessor
9 | {
10 | void execute();
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/handler/handler-base/src/test/java/com/comast/pop/handler/base/messages/HandlerMessagesTest.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.messages;
2 |
3 | import org.testng.annotations.Test;
4 |
5 | public class HandlerMessagesTest
6 | {
7 | @Test
8 | public void verifyMessages()
9 | {
10 | new ResourceBundleStringRetriever(HandlerMessages.RESOURCE_PATH).testAllEntries(HandlerMessages.values());
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/web-ui/src/main/resources/js/util.js:
--------------------------------------------------------------------------------
1 | function verifyJson(json)
2 | {
3 | try {
4 | JSON.parse(json);
5 | return true;
6 | }
7 | catch(err) {
8 | // TODO: need to provide a callback function not directly reference #response
9 | $("#response").val(err);
10 | return false;
11 | }
12 | }
13 |
14 | function defined(variable) {
15 | return (typeof variable !== 'undefined');
16 | }
--------------------------------------------------------------------------------
/handler/handler-executor/test/main/testng-functional.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/input/InputStream.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.input;
2 |
3 | import com.comcast.pop.api.AbstractStream;
4 |
5 | public class InputStream extends AbstractStream
6 | {
7 | public String getInputRef()
8 | {
9 | return getReference();
10 | }
11 |
12 | public void setInputRef(String sourceReference)
13 | {
14 | setReference(sourceReference);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/handler/handler-sample/api/src/main/java/com/comcast/pop/handler/sample/api/ActionParamKeys.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.api;
2 |
3 | import com.comcast.pop.api.params.ParamKey;
4 |
5 | public enum ActionParamKeys implements ParamKey
6 | {
7 | sleepMilliseconds,
8 | logMessage,
9 | exceptionMessage;
10 |
11 | @Override
12 | public String getKey()
13 | {
14 | return name();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/module/module-kube-client/test/main/src/main/java/com/comcast/pop/modules/kube/fabric8/test/factory/ConfigFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.test.factory;
2 |
3 | import com.comcast.pop.modules.kube.client.config.KubeConfig;
4 | import com.comcast.pop.modules.kube.client.config.PodConfig;
5 |
6 | public interface ConfigFactory
7 | {
8 | KubeConfig getDefaultKubeConfig();
9 | PodConfig getDefaultPodConfig();
10 | }
--------------------------------------------------------------------------------
/scheduling/scheduling-api/src/main/java/com/comcast/pop/scheduling/api/AgendaInfo.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.scheduling.api;
2 |
3 | import com.comcast.pop.object.api.IdentifiedObject;
4 |
5 | import java.util.Date;
6 |
7 | public interface AgendaInfo extends IdentifiedObject
8 | {
9 | String getId();
10 | String getInsightId();
11 | String getAgendaId();
12 | String getCustomerId();
13 | Date getAdded();
14 | }
15 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/facility/InsightMapper.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.facility;
2 |
3 | import com.comcast.pop.api.Agenda;
4 |
5 | import java.util.Set;
6 |
7 | public interface InsightMapper extends Comparable
8 | {
9 | public String getName();
10 | public Set getMatchValues();
11 | public boolean matches(Agenda agenda);
12 | public InsightMapper withMatchValue(String matchValue);
13 | }
14 |
--------------------------------------------------------------------------------
/endpoint/endpoint-base/src/main/java/com/comcast/pop/endpoint/base/validation/RequestValidator.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.base.validation;
2 |
3 | import com.comcast.pop.endpoint.api.ServiceRequest;
4 |
5 | public interface RequestValidator
6 | {
7 | void validateGET(R request);
8 | void validatePOST(R request);
9 | void validatePUT(R request);
10 | void validateDELETE(R request);
11 | }
12 |
--------------------------------------------------------------------------------
/module/module-persistence/api/src/main/java/com/comcast/pop/persistence/api/PersistenceException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.api;
2 |
3 | public class PersistenceException extends Throwable
4 | {
5 | public PersistenceException(String message)
6 | {
7 | super(message);
8 | }
9 |
10 | public PersistenceException(String message, Throwable cause)
11 | {
12 | super(message, cause);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl/src/main/java/com/comcast/pop/endpoint/agenda/factory/template/parameters/DuplicateParameterException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agenda.factory.template.parameters;
2 |
3 | import com.comcast.pop.endpoint.api.ValidationException;
4 |
5 | public class DuplicateParameterException extends ValidationException
6 | {
7 | public DuplicateParameterException(String message) {
8 | super(message);
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/field/retriever/environment/EnvironmentVariableProvider.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.field.retriever.environment;
2 |
3 | /**
4 | * This intermediate is pretty much just for the sake of unit tests.
5 | */
6 | public class EnvironmentVariableProvider
7 | {
8 | public String getVariable(String envVar)
9 | {
10 | return System.getenv(envVar);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/processor/OnOperationCompleteListener.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.processor;
2 |
3 | /**
4 | * Basic callback interface. TODO: If this is used extensively it should become an observable... (something with a collection)
5 | */
6 | public interface OnOperationCompleteListener
7 | {
8 | void onComplete(OperationWrapper operationWrapper);
9 | }
10 |
--------------------------------------------------------------------------------
/module/module-persistence/api/src/main/java/com/comcast/pop/persistence/api/ObjectPersisterFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.api;
2 |
3 | import com.comcast.pop.object.api.IdentifiedObject;
4 |
5 | /**
6 | * Basic factory interface for object persistence
7 | * @param
8 | */
9 | public interface ObjectPersisterFactory
10 | {
11 | ObjectPersister getObjectPersister(String containerName);
12 | }
13 |
--------------------------------------------------------------------------------
/endpoint/endpoint-functional-test/src/test/java/com/comcast/pop/endpoint/test/messages/ValidationExceptionMessage.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.test.messages;
2 |
3 | /**
4 | * These are common fragments so they are not hard coded all over
5 | */
6 | public class ValidationExceptionMessage
7 | {
8 | public final static String TITLE_NOT_SPECIFIED = "The title field must be specified";
9 |
10 | private ValidationExceptionMessage(){}
11 | }
12 |
--------------------------------------------------------------------------------
/module/module-persistence/api/src/main/java/com/comcast/pop/persistence/api/field/FieldsField.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.api.field;
2 |
3 | public class FieldsField extends DataObjectField
4 | {
5 | private static final String fieldName = "fields";
6 |
7 | public FieldsField()
8 | {
9 | super(fieldName);
10 | }
11 |
12 | public static String fieldName()
13 | {
14 | return fieldName;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/output/OutputStream.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.output;
2 |
3 | import com.comcast.pop.api.AbstractStream;
4 |
5 | public class OutputStream extends AbstractStream
6 | {
7 | public String getOutputRef()
8 | {
9 | return getReference();
10 | }
11 |
12 | public void setOutputRef(String sourceStreamReference)
13 | {
14 | setReference(sourceStreamReference);
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/persistence/ParamsMapConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.persistence;
2 |
3 | import com.fasterxml.jackson.core.type.TypeReference;
4 | import com.comcast.pop.api.params.ParamsMap;
5 |
6 | public class ParamsMapConverter extends JsonDynamoDBTypeConverter
7 | {
8 | public ParamsMapConverter()
9 | {
10 | super(new TypeReference(){});
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/Stream.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api;
2 |
3 | import java.util.Map;
4 |
5 | public interface Stream
6 | {
7 | public String getReference();
8 |
9 | public void setReference(String sourceStreamReference);
10 |
11 | public String getType();
12 |
13 | public void setType(String type);
14 |
15 | public Map getParams();
16 |
17 | public String getString(final String name);
18 | }
19 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl/src/main/java/com/comcast/pop/endpoint/agenda/factory/template/parameters/MissingTemplateParameterException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agenda.factory.template.parameters;
2 |
3 | import com.comcast.pop.endpoint.api.ValidationException;
4 |
5 | public class MissingTemplateParameterException extends ValidationException
6 | {
7 | public MissingTemplateParameterException(String message) {
8 | super(message);
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/progress/reporter/operation/OperationProgressConsumer.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.progress.reporter.operation;
2 |
3 | import com.comcast.pop.api.progress.OperationProgress;
4 |
5 | public interface OperationProgressConsumer
6 | {
7 | void setOperationProgress(OperationProgress operationProgress, Object payload);
8 | void setOperationProgress(OperationProgress operationProgress);
9 | }
10 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/processor/runner/event/OperationCompleteEvent.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.processor.runner.event;
2 |
3 | import com.comcast.pop.api.operation.Operation;
4 | import com.comcast.pop.api.progress.OperationProgress;
5 |
6 | public interface OperationCompleteEvent
7 | {
8 | void onOperationComplete(Operation operation, OperationProgress operationProgress);
9 | }
10 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/auth/CustomerIdAuthorizationResponse.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.auth;
2 |
3 | import java.util.Collections;
4 |
5 | public class CustomerIdAuthorizationResponse extends AuthorizationResponse
6 |
7 | {
8 | public CustomerIdAuthorizationResponse(String customerID)
9 | {
10 | super(null, null, Collections.singleton(customerID), DataVisibility.authorized_account);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/registry/resident/operations/ResidentHandlerFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.registry.resident.operations;
2 |
3 | import com.comcast.pop.handler.executor.impl.context.ExecutorContext;
4 | import com.comast.pop.handler.base.ResidentHandler;
5 |
6 | public interface ResidentHandlerFactory
7 | {
8 | ResidentHandler create(ExecutorContext executorContext);
9 | }
10 |
--------------------------------------------------------------------------------
/handler/handler-puller/package/dockerRun.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | DIR=$(dirname $0)
4 | [ "$DIR" = "." ] && DIR=$(pwd)
5 |
6 | IMAGE=cppull:1.0.0
7 | ARGS="-launchType local -externalLaunchType local -propFile /config/external.properties -confPath /config/conf.yaml"
8 |
9 | docker run --env-file env.list -it \
10 | -v ${DIR}/local/config:/config \
11 | -v ${DIR}/logs:/app/dumps \
12 | ${IMAGE} \
13 | ${ARGS}
14 |
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/alert/AlertLevel.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.alert;
2 |
3 | public enum AlertLevel
4 | {
5 | INFO,
6 | CRITICAL,
7 | WARNING,
8 | CLEAR,
9 | UNKNOWN;
10 |
11 | public static AlertLevel getEnum(String value) {
12 | for(AlertLevel v : values())
13 | if(v.name().equalsIgnoreCase(value)) return v;
14 |
15 | return UNKNOWN;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/params/GeneralParamKey.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.params;
2 |
3 | public enum GeneralParamKey implements ParamKey
4 | {
5 | progressId,
6 | execProgressId,
7 | agendaId,
8 | dependsOn,
9 | generatedOperationParent,
10 | cid,
11 | customerId,
12 | externalId,
13 | maximumAttempts,
14 | doNotRun;
15 |
16 | public String getKey()
17 | {
18 | return this.name();
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/handler/handler-executor/package/dockerRun.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | DIR=$(dirname $0)
4 | [ "$DIR" = "." ] && DIR=$(pwd)
5 |
6 | IMAGE=fhexec:1.0.0
7 | ARGS="-launchType local -externalLaunchType local -propFile /local/config/external.properties -payloadFile /local/payload.json"
8 |
9 | docker run --env-file env.list -it \
10 | -v ${DIR}/local:/local \
11 | -v ${DIR}/logs:/app/dumps \
12 | ${IMAGE} \
13 | ${ARGS}
14 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-client/src/main/java/com/comcast/pop/endpoint/client/AgendaServiceClientFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.client;
2 |
3 | import com.comcast.pop.http.api.HttpURLConnectionFactory;
4 |
5 | public class AgendaServiceClientFactory
6 | {
7 | public AgendaServiceClient create(String serviceUrl, HttpURLConnectionFactory httpUrlConnectionFactory)
8 | {
9 | return new AgendaServiceClient(serviceUrl, httpUrlConnectionFactory);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/package/dockerRun.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | DIR=$(dirname $0)
4 | [ "$DIR" = "." ] && DIR=$(pwd)
5 |
6 | #IMAGE=fhpr:1.0.0
7 | ARGS="-launchType local -externalLaunchType local -propFile /local/config/external.properties -payloadFile /local/payload.json"
8 |
9 | docker run --env-file env.list -it \
10 | -v ${DIR}/local:/local \
11 | -v ${DIR}/logs:/app/dumps \
12 | ${IMAGE} \
13 | ${ARGS}
14 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/config/ConfigurePod.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.config;
2 |
3 | import com.comast.pop.handler.base.field.retriever.api.FieldRetriever;
4 | import com.comcast.pop.modules.kube.client.config.PodConfig;
5 |
6 | import java.util.Optional;
7 |
8 | public interface ConfigurePod
9 | {
10 | void setPodConfig(PodConfig podConfig, Optional fieldRetriever);
11 | }
12 |
--------------------------------------------------------------------------------
/handler/handler-sample/package/local/config/external.properties:
--------------------------------------------------------------------------------
1 | pop.kubernetes.podconfig.namePrefix=pop-sample-ext
2 | pop.kubernetes.podconfig.docker.imageName=alpine:3.11
3 | pop.kubernetes.podconfig.reapCompletedPods=true
4 | pop.kubernetes.podconfig.docker.imagePullAlways=true
5 |
6 | #nfs settings
7 | #pop.handler.sample.nfs.serverPath=/
8 | #pop.handler.sample.nfs.readOnly=true
9 | #pop.handler.sample.nfs.mountPaths=/testFiles,/media_test01,/media_symlib
10 | #pop.handler.sample.nfs.server=
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/config/converter/ConfigPropertyConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.config.converter;
2 |
3 | public interface ConfigPropertyConverter
4 | {
5 | /**
6 | * Converts the input string to the type associated with this converter
7 | * @param propertyValue The string to convert
8 | * @return The result of the conversion
9 | */
10 | T convertPropertyValue(String propertyValue);
11 | }
12 |
--------------------------------------------------------------------------------
/module/module-queue-aws-sqs/impl/src/main/java/com/comcast/pop/modules/queue/aws/sqs/AmazonSQSClientFactoryImpl.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.queue.aws.sqs;
2 |
3 | import com.amazonaws.services.sqs.AmazonSQS;
4 | import com.amazonaws.services.sqs.AmazonSQSAsyncClientBuilder;
5 |
6 | public class AmazonSQSClientFactoryImpl implements AmazonSQSClientFactory
7 | {
8 | public AmazonSQS createClient()
9 | {
10 | return AmazonSQSAsyncClientBuilder.defaultClient();
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/params/AudioParamKey.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.params;
2 |
3 |
4 | public enum AudioParamKey implements ParamKey
5 | {
6 | bitrate,
7 | channels,
8 | codec,
9 | duration,
10 | format,
11 | id,
12 | language,
13 | profile,
14 | samplingRate,
15 | sampleSize,
16 | streamOrder,
17 | streamSize,
18 | title
19 | ;
20 |
21 | public String getKey()
22 | {
23 | return this.name();
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/persistence/DiagnosticEventArrayConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.persistence;
2 |
3 | import com.fasterxml.jackson.core.type.TypeReference;
4 | import com.comcast.pop.api.progress.DiagnosticEvent;
5 |
6 | public class DiagnosticEventArrayConverter extends JsonDynamoDBTypeConverter
7 | {
8 | public DiagnosticEventArrayConverter()
9 | {
10 | super(new TypeReference(){});
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/progress/WaitingStateMessage.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.progress;
2 |
3 | /**
4 | * Messages when in the waiting state (likely will only ever have 1)
5 | */
6 | public enum WaitingStateMessage
7 | {
8 | PENDING("pending");
9 |
10 | private final String name;
11 |
12 | WaitingStateMessage(String name)
13 | {
14 | this.name = name;
15 | }
16 |
17 | @Override
18 | public String toString()
19 | {
20 | return name;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/endpoint/endpoint-base-aws/src/main/java/com/comcast/pop/endpoint/aws/EnvironmentFacade.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.aws;
2 |
3 | import java.util.Map;
4 |
5 | /**
6 | * Wrapper class for environment variable access (primarily helpful for unit testing)
7 | */
8 | public class EnvironmentFacade
9 | {
10 | public String getEnv(String var)
11 | {
12 | return System.getenv(var);
13 | }
14 |
15 | public Map getEnv()
16 | {
17 | return System.getenv();
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/module/module-docker/src/main/java/com/comcast/pop/module/docker/elastic/InstanceRegulatorClient.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.module.docker.elastic;
2 |
3 | /**
4 | *
5 | */
6 | public interface InstanceRegulatorClient
7 | {
8 | public boolean startInstance(String nameSuffix);
9 |
10 | public int getCurrentInstanceCount();
11 |
12 | public void stopInstance(String nameSuffix);
13 |
14 | public boolean checkInstance(String nameSuffix);
15 |
16 | public void stopAll();
17 |
18 | void close();
19 | }
20 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/translator/PayloadTranslator.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.translator;
2 |
3 | public interface PayloadTranslator
4 | {
5 | /**
6 | * Translates the payload to a object of the specified type
7 | * @param payload The payload to translate
8 | * @param clazz The class to convert the payload to
9 | * @return The translation result
10 | */
11 | PayloadTranslationResult translatePayload(String payload, Class clazz);
12 | }
13 |
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/impl/src/test/java/com/comcast/pop/handler/reaper/impl/messages/ReaperMessagesTest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.reaper.impl.messages;
2 |
3 | import com.comast.pop.handler.base.messages.ResourceBundleStringRetriever;
4 | import org.testng.annotations.Test;
5 |
6 | public class ReaperMessagesTest
7 | {
8 | @Test
9 | public void verifyMessages()
10 | {
11 | new ResourceBundleStringRetriever(ReaperMessages.RESOURCE_PATH).testAllEntries(ReaperMessages.values());
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/scheduling/scheduling-master-aws/src/main/java/com/comcast/pop/scheduling/master/aws/SchedulerRequest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.scheduling.master.aws;
2 |
3 | public class SchedulerRequest
4 | {
5 | private String stageId;
6 |
7 | public SchedulerRequest()
8 | {
9 | }
10 |
11 | public String getStageId()
12 | {
13 | return stageId;
14 | }
15 |
16 | public SchedulerRequest setStageId(String stageId)
17 | {
18 | this.stageId = stageId;
19 | return this;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-client/src/main/java/com/comcast/pop/endpoint/client/POPClientException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.client;
2 |
3 | public class POPClientException extends RuntimeException
4 | {
5 | public POPClientException(String message)
6 | {
7 | super(message);
8 | }
9 |
10 | public POPClientException(String message, Throwable cause)
11 | {
12 | super(message, cause);
13 | }
14 |
15 | public POPClientException(Throwable cause)
16 | {
17 | super(cause);
18 | }
19 | }
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/test/java/com/comcast/pop/handler/executor/impl/messages/ExecutorMessagesTest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.messages;
2 |
3 | import com.comast.pop.handler.base.messages.ResourceBundleStringRetriever;
4 | import org.testng.annotations.Test;
5 |
6 | public class ExecutorMessagesTest
7 | {
8 | @Test
9 | public void verifyMessages()
10 | {
11 | new ResourceBundleStringRetriever(ExecutorMessages.RESOURCE_PATH).testAllEntries(ExecutorMessages.values());
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/test/resources/defaultConfigMap.json:
--------------------------------------------------------------------------------
1 | {
2 | "basePodConfig": {
3 | "memoryRequestCount": "1000m",
4 | "cpuMinRequestCount": "1000m",
5 | "cpuMaxRequestCount": "1000m",
6 | "podScheduledTimeoutMs": 600000,
7 | "reapCompletedPods": true,
8 | "pullAlways": true
9 | },
10 |
11 | "sample": {
12 | "configMapName": "lab-main-t-aor-fhsamp-t01",
13 | "podConfig": {
14 | "imageName": "your.repo.com/fhsamp:1.0.0",
15 | "namePrefix": "pop-samp"
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/impl/src/main/java/com/comcast/pop/handler/reaper/impl/kubernetes/KubernetesPodFacade.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.reaper.impl.kubernetes;
2 |
3 | import io.fabric8.kubernetes.api.model.Pod;
4 |
5 | import java.util.List;
6 | import java.util.Map;
7 |
8 | /**
9 | * Facade for performing basic kubernetes actions
10 | */
11 | public interface KubernetesPodFacade
12 | {
13 | List lookupPods(String namespace, Map fields);
14 | Boolean deletePods(List podsToDelete);
15 | }
16 |
--------------------------------------------------------------------------------
/module/module-kube-client/fabric8/src/main/java/com/comcast/pop/modules/kube/fabric8/client/facade/RetryablePodResourceFacadeFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.client.facade;
2 |
3 | public class RetryablePodResourceFacadeFactory implements PodResourceFacadeFactory
4 | {
5 | public RetryablePodResource create(KubernetesClientFacade kubernetesClientFacade, String namespace, String podName)
6 | {
7 | return new RetryablePodResource(kubernetesClientFacade.getPodResource(namespace, podName));
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/authorization/authorizer-sample-aws/src/main/java/com/comcast/pop/auth/aws/response/PolicyContext.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.auth.aws.response;
2 |
3 | import org.json.JSONObject;
4 |
5 | import java.util.HashMap;
6 |
7 | public class PolicyContext extends HashMap
8 | {
9 | public PolicyContext withKeyValue(String key, String value)
10 | {
11 | put(key, value);
12 | return this;
13 | }
14 | public String toJson()
15 | {
16 | return new JSONObject(this).toString();
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/agenda/aws/persistence/PersistentAgendaConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agenda.aws.persistence;
2 |
3 | import com.comcast.pop.api.Agenda;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBPersistentObjectConverter;
5 |
6 | public class PersistentAgendaConverter extends DynamoDBPersistentObjectConverter
7 | {
8 | public PersistentAgendaConverter()
9 | {
10 | super(Agenda.class, PersistentAgenda.class);
11 | }
12 | }
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/processor/JsonContextReferenceParser.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.processor;
2 |
3 | import java.util.Set;
4 |
5 | public interface JsonContextReferenceParser
6 | {
7 | /**
8 | * Extracts the operation names from the references specified
9 | * @param references The references to re-map to operation names
10 | * @return Set of operation names.
11 | */
12 | Set getOperationNames(Set references);
13 | }
14 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/podconfig/client/registry/PodConfigRegistryClient.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.podconfig.client.registry;
2 |
3 | import com.comcast.pop.handler.kubernetes.support.podconfig.client.registry.api.PodConfigRegistryClientException;
4 | import com.comcast.pop.modules.kube.client.config.PodConfig;
5 |
6 | public interface PodConfigRegistryClient {
7 | PodConfig getPodConfig(String configMapName) throws PodConfigRegistryClientException;
8 | }
9 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/tokens/AgendaToken.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.tokens;
2 |
3 | public enum AgendaToken
4 | {
5 | AGENDA_ID("agendaId"),
6 | OPERATION_NAME("operationName")
7 | ;
8 |
9 | public static final String TOKEN_PREFIX = "pop.";
10 | private final String tokenSuffix;
11 |
12 | public String getToken()
13 | {
14 | return TOKEN_PREFIX + tokenSuffix;
15 | }
16 |
17 | AgendaToken(String tokenSuffix)
18 | {
19 | this.tokenSuffix = tokenSuffix;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/agendatemplate/aws/persistence/AgendaConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agendatemplate.aws.persistence;
2 |
3 | import com.comcast.pop.endpoint.persistence.JsonDynamoDBTypeConverter;
4 | import com.fasterxml.jackson.core.type.TypeReference;
5 | import com.comcast.pop.api.Agenda;
6 |
7 | public class AgendaConverter extends JsonDynamoDBTypeConverter
8 | {
9 | public AgendaConverter()
10 | {
11 | super(new TypeReference(){});
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/reporter/KubernetesReporterSet.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.reporter;
2 |
3 | import com.comast.pop.handler.base.reporter.LogReporter;
4 | import com.comast.pop.handler.base.reporter.ProgressReporterSet;
5 |
6 | public class KubernetesReporterSet extends ProgressReporterSet
7 | {
8 | public KubernetesReporterSet()
9 | {
10 | add(new LogReporter<>());
11 | add(new KubernetesReporter<>());
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/module/module-json-helper/src/main/java/com/comcast/pop/modules/jsonhelper/JsonHelperException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.jsonhelper;
2 |
3 | public class JsonHelperException extends RuntimeException
4 | {
5 | public JsonHelperException(String message)
6 | {
7 | super(message);
8 | }
9 |
10 | public JsonHelperException(String message, Throwable cause)
11 | {
12 | super(message, cause);
13 | }
14 |
15 | public JsonHelperException(Throwable cause)
16 | {
17 | super(cause);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/handler/handler-sample/impl/src/main/java/com/comcast/pop/handler/sample/impl/executor/BaseExternalExecutor.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.impl.executor;
2 |
3 | import com.comast.pop.handler.base.perform.Executor;
4 | import org.slf4j.Logger;
5 | import org.slf4j.LoggerFactory;
6 |
7 | import java.util.List;
8 |
9 | public abstract class BaseExternalExecutor implements Executor>
10 | {
11 | protected Logger logger = LoggerFactory.getLogger(this.getClass());
12 |
13 | public BaseExternalExecutor()
14 | {
15 |
16 | }
17 | }
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-client/src/main/java/com/comcast/pop/endpoint/client/ObjectClientException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.client;
2 |
3 | public class ObjectClientException extends RuntimeException
4 | {
5 | public ObjectClientException(String message)
6 | {
7 | super(message);
8 | }
9 |
10 | public ObjectClientException(String message, Throwable cause)
11 | {
12 | super(message, cause);
13 | }
14 |
15 | public ObjectClientException(Throwable cause)
16 | {
17 | super(cause);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/progress/CompleteStateMessage.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.progress;
2 |
3 | /**
4 | * succeeded: the process succeeded
5 | * failed: the process failed
6 | */
7 | public enum CompleteStateMessage
8 | {
9 | SUCCEEDED("succeeded"),
10 | FAILED("failed");
11 |
12 | private final String name;
13 |
14 | private CompleteStateMessage(String name)
15 | {
16 | this.name = name;
17 | }
18 |
19 | @Override
20 | public String toString()
21 | {
22 | return name;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/resourcepool/UpdateAgendaProgressResponse.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.resourcepool;
2 |
3 | import com.comcast.pop.endpoint.api.DefaultServiceResponse;
4 | import com.comcast.pop.endpoint.api.ErrorResponse;
5 |
6 | public class UpdateAgendaProgressResponse extends DefaultServiceResponse
7 | {
8 | public UpdateAgendaProgressResponse(){}
9 |
10 | public UpdateAgendaProgressResponse(ErrorResponse errorResponse)
11 | {
12 | setErrorResponse(errorResponse);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/main/java/com/comcast/pop/handler/puller/impl/exception/PullerException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.puller.impl.exception;
2 |
3 | /**
4 | *
5 | */
6 | public class PullerException extends RuntimeException
7 | {
8 | public PullerException(Exception e)
9 | {
10 | super(e);
11 | }
12 |
13 | public PullerException(String message)
14 | {
15 | super(message);
16 | }
17 |
18 | public PullerException(String message, Throwable cause)
19 | {
20 | super(message, cause);
21 | }
22 | }
--------------------------------------------------------------------------------
/module/module-persistence/aws/dynamodb/src/main/java/com/comcast/pop/persistence/aws/dynamodb/AWSDynamoDBFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.aws.dynamodb;
2 |
3 | import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
4 | import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;
5 |
6 | /**
7 | * Basic factory for creating AmazonDynamoDB instances
8 | */
9 | public class AWSDynamoDBFactory
10 | {
11 | public AmazonDynamoDB getAmazonDynamoDB()
12 | {
13 | return AmazonDynamoDBClientBuilder.defaultClient();
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/module/module-producer-consumer-util/src/main/java/com/comcast/pop/modules/sync/util/Consumer.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.sync.util;
2 |
3 | import java.time.Instant;
4 | import java.util.Collection;
5 |
6 | public interface Consumer
7 | {
8 | /**
9 | * Performs the consume operation
10 | * @param input The input to operate on
11 | * @param endProcessingTime The UTC time that processing should stop at
12 | * @return A ConsumerResult
13 | */
14 | ConsumerResult consume(Collection input, Instant endProcessingTime);
15 | }
16 |
--------------------------------------------------------------------------------
/module/module-producer-consumer-util/src/main/java/com/comcast/pop/modules/sync/util/Producer.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.sync.util;
2 |
3 | import java.time.Instant;
4 |
5 | public interface Producer
6 | {
7 | /**
8 | * Resets the producer (any pagination, etc).
9 | */
10 | void reset();
11 |
12 | /**
13 | * Performs the produce operation
14 | * @param endProcessingTime The UTC time that processing should stop at
15 | * @return A ProducerResult
16 | */
17 | ProducerResult produce(Instant endProcessingTime);
18 | }
19 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/data/DataObjectRequest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.data;
2 |
3 | import com.comcast.pop.endpoint.api.ServiceRequest;
4 | import com.comcast.pop.object.api.IdentifiedObject;
5 | import com.comcast.pop.persistence.api.query.Query;
6 |
7 | import java.util.List;
8 |
9 | public interface DataObjectRequest extends ServiceRequest
10 | {
11 | String getId();
12 | T getDataObject();
13 | List getQueries();
14 | void setQueries(List queries);
15 | }
16 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/progress/agenda/OperationProgressProvider.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.progress.agenda;
2 |
3 | import com.comcast.pop.api.progress.OperationProgress;
4 |
5 | /**
6 | * Interface for retrieving an OperationProgress
7 | */
8 | public interface OperationProgressProvider
9 | {
10 | /**
11 | * Retrieves an OperationProgress
12 | * @return An operation progress or null if none is available
13 | */
14 | OperationProgress retrieveOperationProgress();
15 | }
16 |
--------------------------------------------------------------------------------
/module/module-kube-client/api/src/main/java/com/comcast/pop/modules/kube/client/LogLineAccumulator.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.client;
2 |
3 | import java.util.List;
4 |
5 | /**
6 | * Collect the execution logs on the pod
7 | */
8 | public interface LogLineAccumulator
9 | {
10 | void appendLine(String s);
11 |
12 | List takeAll();
13 |
14 | boolean isAllLogDataRequired();
15 |
16 | void setCompletion(Runnable runnable);
17 |
18 | void setCompletionIdentifier(String endOfLogIdentifier);
19 |
20 | void forceCompletion();
21 | }
22 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/resourcepool/aws/persistence/PersistentInsightConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.resourcepool.aws.persistence;
2 |
3 | import com.comcast.pop.api.facility.Insight;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBPersistentObjectConverter;
5 |
6 |
7 | public class PersistentInsightConverter extends DynamoDBPersistentObjectConverter
8 | {
9 | public PersistentInsightConverter()
10 | {
11 | super(Insight.class, PersistentInsight.class);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/module/module-process-helper/src/test/java/com/comcast/pop/process/helper/ProcessHelperTest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.process.helper;
2 |
3 | import org.testng.Assert;
4 | import org.testng.annotations.Test;
5 |
6 | public class ProcessHelperTest
7 | {
8 | @Test(enabled=false)
9 | public void testLSExec() throws Exception
10 | {
11 | ProcessHelper processHelper = new ProcessHelper();
12 | ProcessOutput processOutput = processHelper.getOutput("ls", null, null);
13 | Assert.assertNotEquals(0, processOutput.getOutputLines().size());
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/module/module-xml-helper/src/main/java/com/comcast/pop/modules/xmlhelper/XmlSearchException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.xmlhelper;
2 |
3 | public class XmlSearchException extends Exception
4 | {
5 | public XmlSearchException() {
6 | super();
7 | }
8 |
9 | public XmlSearchException(String s) {
10 | super(s);
11 | }
12 |
13 | public XmlSearchException(String s, Throwable throwable) {
14 | super(s, throwable);
15 | }
16 |
17 | public XmlSearchException(Throwable throwable) {
18 | super(throwable);
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/handler/handler-sample/impl/src/main/java/com/comcast/pop/handler/sample/impl/exception/SampleHandlerException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.impl.exception;
2 |
3 | public class SampleHandlerException extends RuntimeException
4 | {
5 | public SampleHandlerException(String message)
6 | {
7 | super(message);
8 | }
9 |
10 | public SampleHandlerException(String message, Throwable cause)
11 | {
12 | super(message, cause);
13 | }
14 |
15 | public SampleHandlerException(Throwable cause)
16 | {
17 | super(cause);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/module/module-kube-client/fabric8/src/main/java/com/comcast/pop/modules/kube/fabric8/client/facade/PodResourceFacade.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.client.facade;
2 |
3 | import com.comcast.pop.modules.kube.fabric8.client.watcher.PodWatcherImpl;
4 | import io.fabric8.kubernetes.api.model.Pod;
5 | import io.fabric8.kubernetes.client.Watch;
6 | import io.fabric8.kubernetes.client.dsl.LogWatch;
7 |
8 | public interface PodResourceFacade
9 | {
10 | Pod get();
11 | String getLog();
12 | Watch watch(PodWatcherImpl podWatcherImpl);
13 | LogWatch watchLog();
14 | }
15 |
--------------------------------------------------------------------------------
/endpoint/endpoint-base-aws/src/main/java/com/comcast/pop/endpoint/aws/JsonRequestStreamHandler.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.aws;
2 |
3 | import com.amazonaws.services.lambda.runtime.Context;
4 | import com.amazonaws.services.lambda.runtime.RequestStreamHandler;
5 | import com.fasterxml.jackson.databind.JsonNode;
6 |
7 | import java.io.IOException;
8 | import java.io.OutputStream;
9 |
10 | public interface JsonRequestStreamHandler extends RequestStreamHandler
11 | {
12 | void handleRequest(JsonNode inputStreamNode, OutputStream outputStream, Context context) throws IOException;
13 | }
14 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-client/src/main/java/com/comcast/pop/endpoint/client/resourcepool/ResourcePoolEndpoint.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.client.resourcepool;
2 |
3 | public enum ResourcePoolEndpoint
4 | {
5 | getAgenda("getAgenda"),
6 | createAgenda("createAgenda"),
7 | updateAgendaProgress("updateAgendaProgress"),
8 | updateAgenda("updateAgenda");
9 |
10 | private String path;
11 |
12 | ResourcePoolEndpoint(String path)
13 | {
14 | this.path = path;
15 | }
16 |
17 | public String getPath()
18 | {
19 | return path;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/resourcepool/aws/persistence/PersistentCustomerConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.resourcepool.aws.persistence;
2 |
3 | import com.comcast.pop.api.facility.Customer;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBPersistentObjectConverter;
5 |
6 | /**
7 | */
8 | public class PersistentCustomerConverter extends DynamoDBPersistentObjectConverter
9 | {
10 | public PersistentCustomerConverter()
11 | {
12 | super(Customer.class, PersistentCustomer.class);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/config/NfsDetailsField.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.config;
2 |
3 | public enum NfsDetailsField
4 | {
5 | nfsServerPath("serverPath"),
6 | nfsReadOnly("readOnly"),
7 | nfsMountPaths("mountPaths"),
8 | nfsServer("server");
9 |
10 | private final String fieldName;
11 |
12 | NfsDetailsField(String fieldName)
13 | {
14 | this.fieldName = fieldName;
15 | }
16 |
17 | public String getFieldName()
18 | {
19 | return fieldName;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/module/module-json-helper/src/test/resources/testParams.json:
--------------------------------------------------------------------------------
1 | {
2 | "mediainfo.1.out":
3 | {
4 | "mediaProperties":
5 | {
6 | "width":720,
7 | "height":480
8 | }
9 | },
10 | "analysis.1.out":
11 | {
12 | "operations":[
13 | {
14 | "id":"encode",
15 | "payload":
16 | {
17 | "setting":"value"
18 | }
19 | },
20 | {
21 | "id":"package",
22 | "payload":
23 | {
24 | "setting":"value"
25 | }
26 | }
27 | ]
28 | },
29 | "basicString":"a value",
30 | "theNumber":42
31 | }
--------------------------------------------------------------------------------
/module/module-persistence/api/src/main/java/com/comcast/pop/persistence/api/field/CountField.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.api.field;
2 |
3 | public class CountField extends DataObjectField
4 | {
5 | private static final String fieldName = "count";
6 | private static final Boolean defaultValue = true;
7 |
8 | public CountField()
9 | {
10 | super(fieldName);
11 | }
12 |
13 | public static String fieldName()
14 | {
15 | return fieldName;
16 | }
17 | public static Boolean defaultValue()
18 | {
19 | return defaultValue;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/module/module-persistence/api/src/main/java/com/comcast/pop/persistence/api/field/LimitField.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.api.field;
2 |
3 | public class LimitField extends DataObjectField
4 | {
5 | private static final String fieldName = "limit";
6 | private static final Integer defaultValue = 100;
7 |
8 | public LimitField()
9 | {
10 | super(fieldName);
11 | }
12 |
13 | public static String fieldName()
14 | {
15 | return fieldName;
16 | }
17 | public static Integer defaultValue()
18 | {
19 | return defaultValue;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/data/DataObjectResponse.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.data;
2 |
3 | import com.comcast.pop.endpoint.api.ErrorResponse;
4 | import com.comcast.pop.endpoint.api.ServiceResponse;
5 | import com.comcast.pop.object.api.IdentifiedObject;
6 |
7 | import java.util.List;
8 |
9 | public interface DataObjectResponse extends ServiceResponse
10 | {
11 | void add(D dataObject);
12 | void addAll(List dataObjects);
13 | List getAll();
14 | Integer getCount();
15 | D getFirst();
16 | }
17 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/agenda/aws/persistence/PersistentAgendaInsightConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agenda.aws.persistence;
2 |
3 | import com.comcast.pop.endpoint.persistence.JsonDynamoDBTypeConverter;
4 | import com.fasterxml.jackson.core.type.TypeReference;
5 | import com.comcast.pop.api.AgendaInsight;
6 |
7 | public class PersistentAgendaInsightConverter extends JsonDynamoDBTypeConverter
8 | {
9 | public PersistentAgendaInsightConverter()
10 | {
11 | super(new TypeReference(){});
12 | }
13 | }
14 |
15 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/exception/AgendaExecutorException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.exception;
2 |
3 | /**
4 | *
5 | */
6 | public class AgendaExecutorException extends RuntimeException
7 | {
8 | public AgendaExecutorException(Exception e)
9 | {
10 | super(e);
11 | }
12 |
13 | public AgendaExecutorException(String message)
14 | {
15 | super(message);
16 | }
17 |
18 | public AgendaExecutorException(String message, Throwable cause)
19 | {
20 | super(message, cause);
21 | }
22 | }
--------------------------------------------------------------------------------
/module/module-docker/src/main/java/com/comcast/pop/module/docker/exception/DockerException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.module.docker.exception;
2 |
3 | public class DockerException extends Exception
4 | {
5 | public DockerException()
6 | {
7 | super();
8 | }
9 |
10 | public DockerException(String message)
11 | {
12 | super(message);
13 | }
14 |
15 | public DockerException(String message, Throwable cause)
16 | {
17 | super(message, cause);
18 | }
19 |
20 | public DockerException(Throwable cause)
21 | {
22 | super(cause);
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/web-ui/src/main/resources/js/content/login.js:
--------------------------------------------------------------------------------
1 | function performLogin(event){
2 | makeAuthorizedRequest(event, getServer(), null, null);
3 | }
4 |
5 | function authorizationChange(idmResponse){
6 | if(idmResponse != null && !idmResponse.isException)
7 | {
8 | var expirationDate = new Date(new Date().getTime() + idmResponse.signInResponse.duration);
9 | $("#authInfo").html("Authorized
Expiration: " + expirationDate.toString());
10 | }
11 | else
12 | {
13 | $("#authInfo").html("Not authorized");
14 | }
15 | }
16 |
17 | registerOnAuthorizationCallback(authorizationChange);
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/agenda/aws/persistence/ListOperationsConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agenda.aws.persistence;
2 |
3 | import com.comcast.pop.endpoint.persistence.JsonDynamoDBTypeConverter;
4 | import com.fasterxml.jackson.core.type.TypeReference;
5 | import com.comcast.pop.api.operation.Operation;
6 |
7 | import java.util.List;
8 |
9 | public class ListOperationsConverter extends JsonDynamoDBTypeConverter>
10 | {
11 | public ListOperationsConverter()
12 | {
13 | super(new TypeReference>(){});
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/agendatemplate/aws/persistence/PersistentAgendaTemplateConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agendatemplate.aws.persistence;
2 |
3 | import com.comcast.pop.api.AgendaTemplate;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBPersistentObjectConverter;
5 |
6 | public class PersistentAgendaTemplateConverter extends DynamoDBPersistentObjectConverter
7 | {
8 | public PersistentAgendaTemplateConverter()
9 | {
10 | super(AgendaTemplate.class, PersistentAgendaTemplate.class);
11 | }
12 | }
--------------------------------------------------------------------------------
/endpoint/endpoint-impl/src/test/java/com/comcast/pop/endpoint/agenda/reporter/TestAgendaProgressReporter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agenda.reporter;
2 |
3 | import com.comcast.pop.api.Agenda;
4 | import com.comcast.pop.persistence.api.ObjectPersister;
5 | import org.slf4j.Logger;
6 |
7 | public class TestAgendaProgressReporter extends AgendaProgressReporter
8 | {
9 | protected void setLogger(Logger logger)
10 | {
11 | this.logger = logger;
12 | }
13 | public TestAgendaProgressReporter(ObjectPersister agendaPersister)
14 | {
15 | super(agendaPersister);
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/agenda/UpdateAgendaResponse.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.agenda;
2 |
3 | import com.comcast.pop.api.Agenda;
4 | import com.comcast.pop.endpoint.api.DefaultServiceResponse;
5 |
6 | public class UpdateAgendaResponse extends DefaultServiceResponse
7 | {
8 | private Agenda agenda;
9 |
10 | public UpdateAgendaResponse()
11 | {
12 | }
13 |
14 | public Agenda getAgenda()
15 | {
16 | return agenda;
17 | }
18 |
19 | public void setAgenda(Agenda agenda)
20 | {
21 | this.agenda = agenda;
22 | }
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/module/module-persistence/api/src/main/java/com/comcast/pop/persistence/api/field/DataObjectField.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.api.field;
2 |
3 | public class DataObjectField implements DataField
4 | {
5 | private String fieldName;
6 |
7 | public DataObjectField(String fieldName)
8 | {
9 | this.fieldName = fieldName;
10 | }
11 |
12 | public String name()
13 | {
14 | return fieldName;
15 | }
16 |
17 | @Override
18 | public boolean isMatch(String fieldName)
19 | {
20 | return fieldName != null && fieldName.equalsIgnoreCase(this.fieldName);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/web-ui/src/main/resources/js/popup.js:
--------------------------------------------------------------------------------
1 | function showPopup(event, visible, showCloseButton){
2 | $("#popup_background").toggle(visible);
3 | $("#popup_window").toggle(visible);
4 |
5 | var toggleCloseButton = true;
6 | if(defined(showCloseButton)){
7 | toggleCloseButton = showCloseButton;
8 | }
9 | $("#popup_close_button_container").toggle(toggleCloseButton);
10 | }
11 |
12 | function showPopupWithHtml(event, titleHTML, contentHTML, showCloseButton){
13 | $("#popup_windowheader").html(titleHTML);
14 | $("#popup_content").html(contentHTML);
15 | showPopup(event, true, showCloseButton);
16 | }
17 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/progress/aws/persistence/PersistentAgendaProgressConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.progress.aws.persistence;
2 |
3 | import com.comcast.pop.api.progress.AgendaProgress;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBPersistentObjectConverter;
5 |
6 | /**
7 | */
8 | public class PersistentAgendaProgressConverter extends DynamoDBPersistentObjectConverter
9 | {
10 | public PersistentAgendaProgressConverter()
11 | {
12 | super(AgendaProgress.class, PersistentAgendaProgress.class);
13 | }
14 | }
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/resourcepool/aws/persistence/PersistentResourcePoolConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.resourcepool.aws.persistence;
2 |
3 | import com.comcast.pop.api.facility.ResourcePool;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBPersistentObjectConverter;
5 |
6 | /**
7 | */
8 | public class PersistentResourcePoolConverter extends DynamoDBPersistentObjectConverter
9 | {
10 | public PersistentResourcePoolConverter()
11 | {
12 | super(ResourcePool.class, PersistentResourcePool.class);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/reporter/ProgressReporter.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.reporter;
2 |
3 | public interface ProgressReporter
4 | {
5 | /**
6 | * Reports the specified object as progress
7 | * @param object The object to report progress with
8 | */
9 | void reportProgress(T object);
10 |
11 | /**
12 | * Reports the specified object and the resulting payload
13 | * @param object The object to report progress with
14 | * @param resultPayload The resulting payload
15 | */
16 | void reportProgress(T object, Object resultPayload);
17 | }
18 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/EndpointDataObjectFeed.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api;
2 |
3 | import java.util.Collection;
4 |
5 | public class EndpointDataObjectFeed
6 | {
7 | private Collection entries;
8 | public EndpointDataObjectFeed(){}
9 |
10 | public EndpointDataObjectFeed(Collection entries)
11 | {
12 | this.entries = entries;
13 | }
14 |
15 | public Collection getEntries()
16 | {
17 | return entries;
18 | }
19 |
20 | public void setEntries(Collection entries)
21 | {
22 | this.entries = entries;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/params/VideoParamKey.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.params;
2 |
3 | public enum VideoParamKey implements ParamKey
4 | {
5 | bFrames,
6 | bitrate,
7 | bufferSize,
8 | cabac,
9 | chromaSubsampling,
10 | codec,
11 | colorSpace,
12 | displayAspectRatio,
13 | duration,
14 | framerate,
15 | gopSize,
16 | height,
17 | id,
18 | level,
19 | profile,
20 | scanOrder,
21 | scanType,
22 | streamOrder,
23 | streamSize,
24 | width,
25 | ;
26 |
27 | public String getKey()
28 | {
29 | return this.name();
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/validation/string/TokenStringValidatorFactory.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.validation.string;
2 |
3 | import java.util.Arrays;
4 |
5 | /**
6 | * Convenience factory for generating TokenStringValidators
7 | */
8 | public class TokenStringValidatorFactory
9 | {
10 | public TokenStringValidator create(String[] tokens)
11 | {
12 | return new TokenStringValidator(Arrays.asList(tokens));
13 | }
14 |
15 | public TokenStringValidator create(String tokens, String delimiter)
16 | {
17 | return create(tokens.split(delimiter));
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/config/PodConfigFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.config;
2 |
3 | import com.comcast.pop.modules.kube.client.config.PodConfig;
4 |
5 | public interface PodConfigFactory
6 | {
7 | /**
8 | * Creates a basic PodConfig
9 | * @return new PodConfig
10 | */
11 | PodConfig createPodConfig();
12 |
13 | /**
14 | * Creates a PodConfig based on the specified templateName
15 | * @return new PodConfig (implementations may vary)
16 | */
17 | PodConfig createPodConfig(String templateName);
18 | }
19 |
--------------------------------------------------------------------------------
/handler/handler-sample/impl/src/main/java/com/comcast/pop/handler/sample/impl/context/OperationContext.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.impl.context;
2 |
3 |
4 | import com.comast.pop.handler.base.context.ProgressOperationContext;
5 | import com.comast.pop.handler.base.field.retriever.LaunchDataWrapper;
6 | import com.comast.pop.handler.base.reporter.ProgressReporter;
7 |
8 | public class OperationContext extends ProgressOperationContext
9 | {
10 | public OperationContext(ProgressReporter reporter, LaunchDataWrapper launchDataWrapper)
11 | {
12 | super(reporter, launchDataWrapper);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/handler/handler-sample/impl/src/main/java/com/comcast/pop/handler/sample/impl/progress/SampleJobInfo.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.impl.progress;
2 |
3 | public class SampleJobInfo
4 | {
5 | public final static String PARAM_NAME = "jobInfo";
6 |
7 | private String jobId;
8 |
9 | public SampleJobInfo()
10 | {
11 | }
12 |
13 | public SampleJobInfo(String jobId)
14 | {
15 | this.jobId = jobId;
16 | }
17 |
18 | public String getJobId()
19 | {
20 | return jobId;
21 | }
22 |
23 | public void setJobId(String jobId)
24 | {
25 | this.jobId = jobId;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/progress/ProgressSummaryRequest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.progress;
2 |
3 | public class ProgressSummaryRequest
4 | {
5 | private String linkId;
6 |
7 | public ProgressSummaryRequest()
8 | {
9 | }
10 |
11 | public ProgressSummaryRequest(String linkId)
12 | {
13 | this.linkId = linkId;
14 | }
15 |
16 | public String getLinkId()
17 | {
18 | return linkId;
19 | }
20 |
21 | public ProgressSummaryRequest setLinkId(String linkId)
22 | {
23 | this.linkId = linkId;
24 | return this;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/endpoint/endpoint-base/src/main/java/com/comcast/pop/endpoint/base/visibility/NoOpVisibilityFilter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.base.visibility;
2 |
3 | import com.comcast.pop.endpoint.api.ServiceRequest;
4 | import com.comcast.pop.object.api.IdentifiedObject;
5 |
6 | /**
7 | * Always visible filter
8 | * @param Type of IdentifiedObject
9 | * @param Type of ServiceRequest
10 | */
11 | public class NoOpVisibilityFilter extends VisibilityFilter
12 | {
13 | @Override
14 | public boolean isVisible(Req req, T object)
15 | {
16 | return true;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-client/src/main/java/com/comcast/pop/endpoint/client/POPServiceClient.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.client;
2 |
3 | import com.comcast.pop.http.api.HttpURLConnectionFactory;
4 |
5 | public abstract class POPServiceClient
6 | {
7 | private final HttpURLConnectionFactory httpUrlConnectionFactory;
8 |
9 | public POPServiceClient(HttpURLConnectionFactory httpURLConnectionFactory)
10 | {
11 | this.httpUrlConnectionFactory = httpURLConnectionFactory;
12 | }
13 |
14 | public HttpURLConnectionFactory getHttpUrlConnectionFactory()
15 | {
16 | return httpUrlConnectionFactory;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/handler/handler-sample/package/local/config/external-minikube.properties:
--------------------------------------------------------------------------------
1 | pop.kubernetes.masterUrl=https://192.168.64.2:8443
2 | pop.kubernetes.namespace=pop
3 |
4 | pop.kubernetes.podconfig.serviceAccount=pop-service
5 | pop.kubernetes.podconfig.namePrefix=pop-sample-ext
6 | pop.kubernetes.podconfig.docker.imageName=alpine:3.11
7 | pop.kubernetes.podconfig.reapCompletedPods=false
8 | pop.kubernetes.podconfig.docker.imagePullAlways=false
9 |
10 | #nfs settings
11 | #pop.handler.sample.nfs.serverPath=/
12 | #pop.handler.sample.nfs.readOnly=true
13 | #pop.handler.sample.nfs.mountPaths=/testFiles,/media_test01,/media_symlib
14 | #pop.handler.sample.nfs.server=
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/output/OutputFileResource.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api.output;
2 |
3 | import com.comcast.pop.api.AbstractFileResource;
4 |
5 | import java.util.List;
6 |
7 | public class OutputFileResource extends AbstractFileResource
8 | {
9 | /**
10 | * Referencing streams to use.
11 | */
12 | private List outputStreamRefs;
13 |
14 | public List getOutputStreamRefs()
15 | {
16 | return outputStreamRefs;
17 | }
18 |
19 | public void setOutputStreamRefs(List outputStreamRefs)
20 | {
21 | this.outputStreamRefs = outputStreamRefs;
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/api/object-api/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.comcast.pop
4 | pop-root-api
5 | 1.0.0
6 |
7 |
8 | 4.0.0
9 |
10 | com.comcast.pop.object
11 | pop-object-api
12 | 1.0.0
13 | jar
14 | Object API
15 |
16 |
17 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/AgendaInsight.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api;
2 |
3 | public class AgendaInsight
4 | {
5 | private String resourcePoolId;
6 | private String insightId;
7 |
8 | public String getResourcePoolId()
9 | {
10 | return resourcePoolId;
11 | }
12 |
13 | public void setResourcePoolId(String resourcePoolId)
14 | {
15 | this.resourcePoolId = resourcePoolId;
16 | }
17 |
18 | public String getInsightId()
19 | {
20 | return insightId;
21 | }
22 |
23 | public void setInsightId(String insightId)
24 | {
25 | this.insightId = insightId;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/module/module-http-api/src/main/java/com/comcast/pop/http/api/HTTPClientConfig.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.http.api;
2 |
3 | public abstract class HTTPClientConfig
4 | {
5 | private String proxyHost;
6 | private String proxyPort;
7 |
8 | public String getProxyHost()
9 | {
10 | return proxyHost;
11 | }
12 |
13 | public void setProxyHost(String proxyHost)
14 | {
15 | this.proxyHost = proxyHost;
16 | }
17 |
18 | public String getProxyPort()
19 | {
20 | return proxyPort;
21 | }
22 |
23 | public void setProxyPort(String proxyPort)
24 | {
25 | this.proxyPort = proxyPort;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/module/module-compression/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.comcast.pop
4 | pop-root-module
5 | 1.0.0
6 |
7 |
8 | 4.0.0
9 |
10 | com.comcast.pop.module
11 | pop-compression
12 | 1.0.0
13 | jar
14 | Compression
15 |
16 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/operationprogress/aws/persistence/PersistentOperationProgressConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.operationprogress.aws.persistence;
2 |
3 | import com.comcast.pop.api.progress.OperationProgress;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBPersistentObjectConverter;
5 |
6 | /**
7 | */
8 | public class PersistentOperationProgressConverter extends DynamoDBPersistentObjectConverter
9 | {
10 | public PersistentOperationProgressConverter()
11 | {
12 | super(OperationProgress.class, PersistentOperationProgress.class);
13 | }
14 | }
--------------------------------------------------------------------------------
/endpoint/endpoint-impl/src/test/java/com/comcast/pop/endpoint/validation/BaseValidatorTest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.validation;
2 |
3 | import com.comcast.pop.endpoint.api.data.DataObjectRequest;
4 | import com.comcast.pop.endpoint.api.data.DefaultDataObjectRequest;
5 | import com.comcast.pop.object.api.IdentifiedObject;
6 |
7 | public abstract class BaseValidatorTest
8 | {
9 | protected DataObjectRequest createRequest(T agenda)
10 | {
11 | DefaultDataObjectRequest objectRequest = new DefaultDataObjectRequest<>();
12 | objectRequest.setDataObject(agenda);
13 | return objectRequest;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/api/main/src/main/java/com/comcast/pop/api/FileResource.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.api;
2 |
3 | import com.comcast.pop.api.params.ParamsMap;
4 |
5 | public interface FileResource
6 | {
7 | public int getIndex();
8 | public void setIndex(int index);
9 | public String getLabel();
10 | public void setLabel(String label);
11 | public ParamsMap getCredentials();
12 | public void setCredentials(ParamsMap credentials);
13 | public String getType();
14 | public void setType(String type);
15 | public String getUrl();
16 | public void setUrl(String url);
17 | public ParamsMap getParams();
18 | public void addParam(String name, Object value);
19 | }
20 |
--------------------------------------------------------------------------------
/automated-retry/agenda-reclaimer-impl/src/main/java/com/comcast/pop/agenda/reclaim/factory/AgendaReclaimerFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.agenda.reclaim.factory;
2 |
3 | import com.comcast.pop.agenda.reclaim.AgendaReclaimer;
4 | import com.comcast.pop.agenda.reclaim.config.ReclaimerConfig;
5 |
6 | public class AgendaReclaimerFactory
7 | {
8 | public AgendaReclaimer createAgendaReclaimer(AgendaProgressProducerFactory producerFactory, AgendaProgressConsumerFactory consumerFactory, ReclaimerConfig config)
9 | {
10 | return new AgendaReclaimer(
11 | producerFactory,
12 | consumerFactory,
13 | config
14 | );
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/progress/agenda/AgendaProgressConsumer.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.progress.agenda;
2 |
3 | import com.comcast.pop.api.progress.AgendaProgress;
4 |
5 | public interface AgendaProgressConsumer
6 | {
7 | void setAgendaProgress(AgendaProgress agendaProgress);
8 | void registerOperationProgressProvider(OperationProgressProvider operationProgressProvder);
9 | void setTotalProgressOperationCount(int operationTotalCount);
10 | void adjustTotalProgressOperationCount(int operationTotalCountAdjustment);
11 | void incrementCompletedOperationCount(int incrementAmount);
12 | }
13 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/main/java/com/comcast/pop/handler/puller/impl/context/ExecutionContext.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.puller.impl.context;
2 |
3 | public class ExecutionContext
4 | {
5 | private Thread pullerThread;
6 |
7 | public ExecutionContext(Thread pullerThread)
8 | {
9 | this.pullerThread = pullerThread;
10 | }
11 |
12 | public void startThread()
13 | {
14 | pullerThread.start();
15 | }
16 |
17 | public boolean isThreadAlive()
18 | {
19 | return pullerThread.isAlive();
20 | }
21 |
22 | @Deprecated
23 | public void stopThread()
24 | {
25 | pullerThread.stop();
26 | }
27 | }
--------------------------------------------------------------------------------
/module/module-kube-client/api/src/main/java/com/comcast/pop/modules/kube/client/logging/LogLineObserver.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.client.logging;
2 |
3 | import java.util.Collection;
4 | import java.util.function.Consumer;
5 |
6 | /**
7 | * Used to send logs to consumers
8 | */
9 | public interface LogLineObserver
10 | {
11 | public LogLineObserver setPodName(String podName);
12 |
13 | public void addConsumer(Consumer consumer);
14 |
15 | public void addAggregateConsumer(Consumer> consumer);
16 |
17 | public void send(String s);
18 |
19 | public void send(Collection lines);
20 |
21 | public void done();
22 | }
--------------------------------------------------------------------------------
/deploy/resourcepool/kubernetes/configmap/sample/ConfigMap.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: ConfigMap
3 | metadata:
4 | name: pop-sample-01
5 | namespace: pop
6 | labels:
7 | serviceShortName: fhsamp
8 | data:
9 | env-properties: |
10 | JAVA_HEAP=256M
11 | LOG_LEVEL=DEBUG
12 | JAVA_EXTRA=-XX:MaxMetaspaceSize=256m
13 | external-properties: |
14 | pop.kubernetes.namespace=pop
15 | pop.kubernetes.podconfig.serviceAccount=pop-service
16 | pop.kubernetes.podconfig.namePrefix=pop-sample-ext
17 | pop.kubernetes.podconfig.docker.imageName=alpine:3.11
18 | pop.kubernetes.podconfig.reapCompletedPods=false
19 | pop.kubernetes.podconfig.docker.imagePullAlways=false
--------------------------------------------------------------------------------
/endpoint/endpoint-functional-test/src/test/resources/com/comcast/pop/endpoint/test/manual/sampleAgenda.json:
--------------------------------------------------------------------------------
1 | {
2 | "operations": [
3 | {
4 | "id": "01",
5 | "name": "sample.1",
6 | "type": "sample",
7 | "payload": {
8 | "actions": [
9 | {
10 | "action": "externalExecute",
11 | "paramsMap": {
12 | "externalArgs": [
13 | "ash",
14 | "-c",
15 | "ls",
16 | "-la"
17 | ]
18 | }
19 | }
20 | ],
21 | "resultPayload": {
22 | "actionData": "output!"
23 | }
24 | }
25 | }
26 | ]
27 | }
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/persistence/DateConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.persistence;
2 |
3 | import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTypeConverter;
4 |
5 | import java.util.Date;
6 |
7 | public class DateConverter implements DynamoDBTypeConverter
8 | {
9 | @Override
10 | public Long convert(Date date)
11 | {
12 | if(date == null) return -1L;
13 | return date.getTime();
14 | }
15 |
16 | @Override
17 | public Date unconvert(Long longValue)
18 | {
19 | if(longValue == null) return new Date();
20 | return new Date(longValue);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/module/module-json-helper/src/test/resources/context/expectedResult.json:
--------------------------------------------------------------------------------
1 | {
2 | "someitem":
3 | {
4 | "field1":{
5 | "stats":
6 | {
7 | "encodeTime":4560
8 | }
9 | },
10 | "field2":{
11 | "streamProperties":
12 | {
13 | "width":720,
14 | "height":480
15 | }
16 | },
17 | "field3":[
18 | {
19 | "streamProperties": {
20 | "width": 720,
21 | "height": 480
22 | }
23 | },
24 | "someText",
25 | {
26 | "nested": {
27 | "stats": {
28 | "encodeTime": 4560
29 | }
30 | }
31 | },
32 | 4
33 | ]
34 | }
35 | }
--------------------------------------------------------------------------------
/module/module-kube-client/fabric8/src/test/java/com/comcast/pop/modules/kube/fabric8/client/watcher/PodPhaseTest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.client.watcher;
2 |
3 | import io.fabric8.kubernetes.api.model.PodStatus;
4 | import org.testng.Assert;
5 | import org.testng.annotations.Test;
6 |
7 | public class PodPhaseTest
8 | {
9 |
10 | @Test
11 | void testFromPodStatus()
12 | {
13 | PodPhase podPhase = PodPhase.SUCCEEDED;
14 | PodStatus podStatus = new PodStatus();
15 | podStatus.setPhase("succeeded");
16 | PodPhase result = PodPhase.fromPodStatus(podStatus);
17 | Assert.assertEquals(result, podPhase);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/scheduling/scheduling-queue-aws/src/main/java/com/comcast/pop/scheduling/queue/aws/persistence/PersistentInsightScheduleInfoConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.scheduling.queue.aws.persistence;
2 |
3 | import com.comcast.pop.scheduling.queue.InsightScheduleInfo;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBPersistentObjectConverter;
5 |
6 | /**
7 | */
8 | public class PersistentInsightScheduleInfoConverter extends DynamoDBPersistentObjectConverter
9 | {
10 | public PersistentInsightScheduleInfoConverter()
11 | {
12 | super(InsightScheduleInfo.class, PersistentInsightScheduleInfo.class);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/data-reaping/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 | com.comcast.pop
6 | pop-root
7 | 1.0.7
8 |
9 |
10 | 4.0.0
11 |
12 | pop-root-reaper
13 | 1.0.0
14 |
15 | pom
16 |
17 |
18 | data-object-reaper-aws
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/ObjectNotFoundException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api;
2 |
3 | public class ObjectNotFoundException extends RuntimeServiceException
4 | {
5 | private static final int RESPONSE_CODE = 404;
6 |
7 | public ObjectNotFoundException() {
8 | super(404);
9 | }
10 |
11 | public ObjectNotFoundException(String message) {
12 | super(message, 404);
13 | }
14 |
15 | public ObjectNotFoundException(String message, Throwable cause) {
16 | super(message, cause, 404);
17 | }
18 |
19 | public ObjectNotFoundException(Throwable cause) {
20 | super(cause, 404);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/config/KubeConfigArgument.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.config;
2 |
3 | import com.comast.pop.handler.base.field.retriever.api.NamedField;
4 |
5 | public enum KubeConfigArgument implements NamedField
6 | {
7 | OAUTH_CERT_FILE_PATH("oauthCertPath"),
8 | OAUTH_TOKEN_FILE_PATH("oauthTokenPath");
9 |
10 | private final String fieldName;
11 |
12 | KubeConfigArgument(String fieldName)
13 | {
14 | this.fieldName = fieldName;
15 | }
16 |
17 | @Override
18 | public String getFieldName()
19 | {
20 | return fieldName;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/module/module-kube-client/fabric8/src/main/java/com/comcast/pop/modules/kube/fabric8/client/exception/PodNotScheduledException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.client.exception;
2 |
3 | public class PodNotScheduledException extends PodException
4 | {
5 | public PodNotScheduledException()
6 | {
7 | }
8 |
9 | public PodNotScheduledException(String message)
10 | {
11 | super(message);
12 | }
13 |
14 | public PodNotScheduledException(String message, Throwable cause)
15 | {
16 | super(message, cause);
17 | }
18 |
19 | public PodNotScheduledException(Throwable cause)
20 | {
21 | super(cause);
22 | }
23 |
24 |
25 | }
--------------------------------------------------------------------------------
/authorization/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 | com.comcast.pop
6 | pop-root
7 | 1.0.7
8 |
9 |
10 | 4.0.0
11 |
12 | pop-root-authorization
13 | 1.0.0
14 |
15 | pom
16 |
17 |
18 | authorizer-sample-aws
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/automated-retry/callback-progress-retry-aws/impl/src/main/java/com/comcast/pop/callback/progress/retry/AgendaProgressProcessorFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.callback.progress.retry;
2 |
3 | import com.comcast.pop.api.progress.AgendaProgress;
4 | import com.comcast.pop.endpoint.client.AgendaServiceClient;
5 | import com.comcast.pop.endpoint.client.ObjectClient;
6 |
7 | public class AgendaProgressProcessorFactory
8 | {
9 | public AgendaProgressProcessor createAgendaProgressProcessor(AgendaServiceClient agendaServiceClient, ObjectClient agendaProgressClient)
10 | {
11 | return new AgendaProgressProcessor(agendaServiceClient, agendaProgressClient);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/resident/log/LogHandlerInput.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.resident.log;
2 |
3 | import java.util.List;
4 |
5 | public class LogHandlerInput
6 | {
7 | private List logMessages;
8 |
9 | public LogHandlerInput(){}
10 |
11 | public LogHandlerInput(List logMessages)
12 | {
13 | this.logMessages = logMessages;
14 | }
15 |
16 | public List getLogMessages()
17 | {
18 | return logMessages;
19 | }
20 |
21 | public void setLogMessages(List logMessages)
22 | {
23 | this.logMessages = logMessages;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/config/KubeConfigField.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.config;
2 |
3 | import com.comast.pop.handler.base.field.retriever.api.NamedField;
4 |
5 | public enum KubeConfigField implements NamedField
6 | {
7 | MASTER_URL("pop.kubernetes.masterUrl"),
8 | NAMESPACE("pop.kubernetes.namespace"),
9 | ZONE("pop.kubernetes.zone");
10 |
11 | private final String fieldName;
12 |
13 | KubeConfigField(String fieldName)
14 | {
15 | this.fieldName = fieldName;
16 | }
17 |
18 | public String getFieldName()
19 | {
20 | return fieldName;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/payload/compression/CompressedPayloadField.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.payload.compression;
2 |
3 | import com.comast.pop.handler.base.field.retriever.api.NamedField;
4 |
5 | public enum CompressedPayloadField implements NamedField
6 | {
7 | PAYLOAD_COMPRESSION_MAX_SEGMENT_SIZE("payload.compression.maxSegmentSize");
8 |
9 | private final String fieldName;
10 |
11 | CompressedPayloadField(String fieldName)
12 | {
13 | this.fieldName = fieldName;
14 | }
15 |
16 | public String getFieldName()
17 | {
18 | return fieldName;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/module/module-json-helper/src/test/resources/testReferences.json:
--------------------------------------------------------------------------------
1 | {
2 | "someObject":
3 | {
4 | "mediainforef":"@",
5 | "mediainforefwidth":"@"
6 | },
7 | "arrayRef":[
8 | "@",
9 | "@"
10 | ],
11 | "anotherItem":
12 | {
13 | "subitem":
14 | {
15 | "childitem":"@"
16 | }
17 | },
18 | "stringref":"@",
19 | "numberRef":"@",
20 | "tokenNumber":"@",
21 | "tokenString":"@",
22 | "compositeString":"x@y",
23 | "agendaId":"@"
24 | }
--------------------------------------------------------------------------------
/api/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 | com.comcast.pop
6 | pop-root
7 | 1.0.7
8 |
9 |
10 | 4.0.0
11 |
12 | pop-root-api
13 | 1.0.0
14 |
15 | pom
16 |
17 |
18 | main
19 | object-api
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/deploy/resourcepool/kubernetes/configmap/puller/Service.yaml:
--------------------------------------------------------------------------------
1 | kind: Service
2 | apiVersion: v1
3 | metadata:
4 | name: pop-puller-01
5 | namespace: pop
6 | annotations:
7 | # AWS to get X-Forwarded-For headers and other things
8 | service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http
9 | service.beta.kubernetes.io/aws-load-balancer-internal: ‘0.0.0.0/0’
10 | labels:
11 | serviceShortName: cppull
12 | spec:
13 | type: LoadBalancer
14 | # sessionAffinity: ClientIP
15 | ports:
16 | - port: 80
17 | targetPort: 8080
18 | name: service
19 | - port: 81
20 | targetPort: 8081
21 | name: admin
22 | selector:
23 | clusterTitle: pop-puller-01
24 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/properties/ExecutorProperty.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.properties;
2 |
3 | import com.comast.pop.handler.base.field.retriever.api.NamedField;
4 |
5 | public enum ExecutorProperty implements NamedField
6 | {
7 | REAP_SELF("executor.reap.self"),
8 | PROGRESS_THREAD_EXIT_TIMEOUT_MS("executor.progress.threadExitTimeoutMs");
9 |
10 | private final String fieldName;
11 |
12 | ExecutorProperty(String fieldName)
13 | {
14 | this.fieldName = fieldName;
15 | }
16 |
17 | @Override
18 | public String getFieldName()
19 | {
20 | return fieldName;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/handler/handler-sample/package/local/config/configMap.yaml:
--------------------------------------------------------------------------------
1 | # for use with minikube ONLY, lab has the configmap in github
2 | # we intentionally do NOT configure the kube master url
3 |
4 | apiVersion: v1
5 | kind: ConfigMap
6 | metadata:
7 | name: lab-main-t-aor-fhsamp-t01
8 | namespace: pop
9 | labels:
10 | environmentShortName: lab
11 | serviceShortName: fhsamp
12 | regionShortName: main
13 | partitionShortName: t
14 | clusterSuffix: t01
15 | clusterTitle: lab-main-t-aor-fhsamp-t01
16 | annotations:
17 | cts/k8cluster: minikube
18 | data:
19 | env-properties: |
20 | JAVA_HEAP=256M
21 | LOG_LEVEL=DEBUG
22 | JAVA_EXTRA=-XX:MaxMetaspaceSize=256m
23 | external-properties: |
--------------------------------------------------------------------------------
/module/module-queue-aws-sqs/api/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.comcast.pop.module
4 | pop-module-queue-aws-sqs-base
5 | 1.0.0
6 |
7 |
8 | 4.0.0
9 |
10 | com.comcast.pop.module
11 | module-queue-aws-sqs-api
12 | 1.0.0
13 | jar
14 | Queue AWS SQS API
15 |
16 |
--------------------------------------------------------------------------------
/web-ui/src/main/resources/js/loomConsole/console.d.ts:
--------------------------------------------------------------------------------
1 | interface IConsoleJS {
2 | getContext(): Promise;
3 | keepAlive(): Promise;
4 | }
5 | declare type MessageType = "getContext" | "keepAlive";
6 | interface IConsoleResponse {
7 | method: MessageType;
8 | data?: any;
9 | error?: string;
10 | }
11 | export default class ConsoleJS implements IConsoleJS {
12 | constructor();
13 | private consoleWindow;
14 | private static isEmbedded;
15 | private postToConsole;
16 | private createCustomEvent;
17 | private askConsole;
18 | getContext(): Promise;
19 | keepAlive(): Promise;
20 | }
21 | export {};
22 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/field/api/args/HandlerArgument.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.field.api.args;
2 |
3 | public enum HandlerArgument implements CommandLineArgument
4 | {
5 | LAUNCH_TYPE("launchType"),
6 | EXTERNAL_LAUNCH_TYPE("externalLaunchType"),
7 | PROP_FILE("propFile"),
8 | PAYLOAD_FILE("payloadFile"),
9 | LAST_PROGRESS_FILE("lastProgressFile");
10 |
11 | private final String argumentName;
12 |
13 | HandlerArgument(String argumentName)
14 | {
15 | this.argumentName = argumentName;
16 | }
17 |
18 | @Override
19 | public String getArgumentName()
20 | {
21 | return argumentName;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/resident/generator/UpdateAgendaResidentHandlerFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.resident.generator;
2 |
3 | import com.comast.pop.handler.base.ResidentHandler;
4 | import com.comcast.pop.handler.executor.impl.context.ExecutorContext;
5 | import com.comcast.pop.handler.executor.impl.registry.resident.operations.ResidentHandlerFactory;
6 |
7 | public class UpdateAgendaResidentHandlerFactory implements ResidentHandlerFactory
8 | {
9 | @Override
10 | public ResidentHandler create(ExecutorContext executorContext)
11 | {
12 | return new UpdateAgendaResidentHandler(executorContext);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/impl/src/main/java/com/comcast/pop/handler/reaper/impl/property/ReaperProperty.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.reaper.impl.property;
2 |
3 | import com.comast.pop.handler.base.field.retriever.api.NamedField;
4 |
5 | public enum ReaperProperty implements NamedField
6 | {
7 | REAPER_RUN_MAX_MINUTES("reaper.run.maxminutes"),
8 | POD_REAP_AGE_MINUTES("pod.reap.age.minutes"),
9 | POD_REAP_BATCH_SIZE("pod.reap.batch.size");
10 |
11 | private final String fieldName;
12 |
13 | ReaperProperty(String fieldName)
14 | {
15 | this.fieldName = fieldName;
16 | }
17 |
18 | public String getFieldName()
19 | {
20 | return fieldName;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/handler/handler-sample/package/local/payload-local-multi.json:
--------------------------------------------------------------------------------
1 | {
2 | "actions": [
3 | {
4 | "action": "log",
5 | "paramsMap": {
6 | "sleepMilliseconds": 5000,
7 | "logMessage": "This is a custom log message"
8 | }
9 | },
10 | {
11 | "action": "log",
12 | "paramsMap": {
13 | "sleepMilliseconds": 4000,
14 | "logMessage": "This is another custom log message"
15 | }
16 | },
17 | {
18 | "action": "log",
19 | "paramsMap": {
20 | "sleepMilliseconds": 4000,
21 | "logMessage": "This is the last custom log message"
22 | }
23 | }
24 | ],
25 | "resultPayload": {
26 | "data": "someData"
27 | }
28 | }
--------------------------------------------------------------------------------
/web-ui/src/main/resources/css/opensans.css:
--------------------------------------------------------------------------------
1 | h1, h2, h3, h4, h5, h6, .site-title {
2 | font-family: 'Open Sans', sans-serif;
3 | }
4 | body.site {
5 | border-top: 3px solid #f28ef2;
6 | background-color: #3f7db8;
7 | }
8 | .nav-list > .active > a,
9 | .nav-list > .active > a:hover,
10 | .dropdown-menu li > a:hover,
11 | .dropdown-menu .active > a,
12 | .dropdown-menu .active > a:hover,
13 | .nav-pills > .active > a,
14 | .nav-pills > .active > a:hover,
15 | .btn-primary {
16 | background: #f28ef2;
17 | }
18 |
19 | textarea {
20 | /* font-family:Consolas,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New, monospace;*/
21 | font-family: 'Monaco', monospace;
22 | }
--------------------------------------------------------------------------------
/handler/handler-sample/api/src/main/java/com/comcast/pop/handler/sample/api/SampleAction.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.api;
2 |
3 | import com.comcast.pop.api.params.ParamsMap;
4 |
5 | public class SampleAction
6 | {
7 | private String action;
8 | private ParamsMap paramsMap;
9 |
10 | public String getAction()
11 | {
12 | return action;
13 | }
14 |
15 | public void setAction(String action)
16 | {
17 | this.action = action;
18 | }
19 |
20 | public ParamsMap getParamsMap()
21 | {
22 | return paramsMap;
23 | }
24 |
25 | public void setParamsMap(ParamsMap paramsMap)
26 | {
27 | this.paramsMap = paramsMap;
28 | }
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/handler/handler-sample/impl/src/main/java/com/comcast/pop/handler/sample/impl/action/LogAction.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.impl.action;
2 |
3 | import com.comast.pop.handler.base.progress.reporter.operation.OperationProgressReporter;
4 | import com.comcast.pop.handler.sample.api.ActionParameters;
5 | import org.slf4j.Logger;
6 | import org.slf4j.LoggerFactory;
7 |
8 | public class LogAction extends BaseAction
9 | {
10 | private static Logger logger = LoggerFactory.getLogger(LogAction.class);
11 |
12 | @Override
13 | protected void perform(OperationProgressReporter reporter, ActionParameters actionParameters)
14 | {
15 | logger.info(actionParameters.getLogMessage());
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/config/ExecutorConfigProperty.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.config;
2 |
3 | import com.comast.pop.handler.base.field.retriever.api.NamedField;
4 |
5 | public enum ExecutorConfigProperty implements NamedField
6 | {
7 | EXPAND_AGENDA_ATTEMPTS("resourcePool.expandAgenda.attemptCount"),
8 | EXPAND_AGENDA_DELAY_MS("resourcePool.expandAgenda.delayMs");
9 |
10 | private String fieldName;
11 |
12 | ExecutorConfigProperty(String fieldName)
13 | {
14 | this.fieldName = fieldName;
15 | }
16 |
17 | @Override
18 | public String getFieldName()
19 | {
20 | return fieldName;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/ValidationException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api;
2 |
3 | public class ValidationException extends RuntimeServiceException
4 | {
5 | private static final int statusCode = 422;
6 |
7 | public ValidationException()
8 | {
9 | super(statusCode);
10 | }
11 |
12 | public ValidationException(String message)
13 | {
14 | super(message, statusCode);
15 | }
16 |
17 | public ValidationException(String message, Throwable cause)
18 | {
19 | super(message, cause, statusCode);
20 | }
21 |
22 | public ValidationException(Throwable cause)
23 | {
24 | super(cause, statusCode);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/BadRequestException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api;
2 |
3 |
4 | public class BadRequestException extends RuntimeServiceException
5 | {
6 | private static final int statusCode = 400;
7 |
8 | public BadRequestException()
9 | {
10 | super(statusCode);
11 | }
12 |
13 | public BadRequestException(String message)
14 | {
15 | super(message, statusCode);
16 | }
17 |
18 | public BadRequestException(String message, Throwable cause)
19 | {
20 | super(message, cause, statusCode);
21 | }
22 |
23 | public BadRequestException(Throwable cause)
24 | {
25 | super(cause, statusCode);
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/handler/handler-puller/package/local/config/registry.json:
--------------------------------------------------------------------------------
1 | {
2 | "basePodConfig": {
3 | "memoryRequestCount": "1000m",
4 | "cpuMinRequestCount": "1000m",
5 | "cpuMaxRequestCount": "1000m",
6 | "podScheduledTimeoutMs": 600000,
7 | "reapCompletedPods": true,
8 | "pullAlways": true
9 | },
10 | "executor": {
11 | "configMapName": "pop-executor-01",
12 | "podConfig": {
13 | "imageName": "you.docker.repo/fhexec:1.0.0",
14 | "namePrefix": "pop-exec",
15 | "configMapDetails": {
16 | "mapKeyPaths":[
17 | { "key": "external-properties", "path": "external.properties"},
18 | { "key": "registry-json", "path": "registry.json"}
19 | ]
20 | }
21 | }
22 | }
23 | }
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/UnauthorizedException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api;
2 |
3 | public class UnauthorizedException extends RuntimeServiceException
4 | {
5 | private static final int statusCode = 403;
6 |
7 | public UnauthorizedException()
8 | {
9 | super(statusCode);
10 | }
11 |
12 | public UnauthorizedException(String message)
13 | {
14 | super(message, statusCode);
15 | }
16 |
17 | public UnauthorizedException(String message, Throwable cause)
18 | {
19 | super(message, cause, statusCode);
20 | }
21 |
22 | public UnauthorizedException(Throwable cause)
23 | {
24 | super(cause, statusCode);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/main/java/com/comcast/pop/handler/puller/impl/executor/local/LocalOperationLauncherFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.puller.impl.executor.local;
2 |
3 | import com.comcast.pop.handler.puller.impl.context.PullerContext;
4 | import com.comcast.pop.handler.puller.impl.executor.BaseLauncher;
5 | import com.comcast.pop.handler.puller.impl.executor.LauncherFactory;
6 |
7 | /**
8 | * Factory for producing launchers.
9 | * This may only apply to functional tests.
10 | */
11 | public class LocalOperationLauncherFactory implements LauncherFactory
12 | {
13 | @Override
14 | public BaseLauncher createLauncher(PullerContext handlerContext)
15 | {
16 | return new LocalOperationLauncher();
17 | }
18 | }
--------------------------------------------------------------------------------
/module/module-kube-client/api/src/main/java/com/comcast/pop/modules/kube/client/config/KeyPathPair.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.client.config;
2 |
3 | public class KeyPathPair {
4 | private String key;
5 | private String path;
6 |
7 | public KeyPathPair() {
8 | }
9 |
10 | public KeyPathPair(String key, String path) {
11 | this.key = key;
12 | this.path = path;
13 | }
14 |
15 | public String getKey() {
16 | return key;
17 | }
18 |
19 | public void setKey(String key) {
20 | this.key = key;
21 | }
22 |
23 | public String getPath() {
24 | return path;
25 | }
26 |
27 | public void setPath(String path) {
28 | this.path = path;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/resourcepool/CreateAgendaRequest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.resourcepool;
2 |
3 | import com.comcast.pop.api.Agenda;
4 |
5 | import java.util.Collection;
6 |
7 | public class CreateAgendaRequest
8 | {
9 | private Collection dataObjects;
10 |
11 | public CreateAgendaRequest(){}
12 |
13 | public CreateAgendaRequest(Collection dataObjects)
14 | {
15 | this.dataObjects = dataObjects;
16 | }
17 |
18 | public Collection getAgendas()
19 | {
20 | return dataObjects;
21 | }
22 |
23 | public void setAgendas(Collection dataObjects)
24 | {
25 | this.dataObjects = dataObjects;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/java/com/comcast/pop/handler/executor/impl/processor/parallel/OperationConductorModifier.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.executor.impl.processor.parallel;
2 |
3 | import com.comcast.pop.handler.executor.impl.processor.OperationWrapper;
4 | import com.comcast.pop.handler.executor.impl.context.ExecutorContext;
5 |
6 | /**
7 | * Modifier for adjusting the state of the conductor
8 | *
9 | * TODO: consider an interface for the OperationConductor to limit the access on the object itself (not really critical in this context)
10 | */
11 | public interface OperationConductorModifier
12 | {
13 | void modify(ExecutorContext executorContext, OperationWrapper operationWrapper, OperationConductor operationConductor);
14 | }
15 |
--------------------------------------------------------------------------------
/data-reaping/data-object-reaper-aws/src/main/java/com/comcast/pop/reaper/objects/aws/BaseBatchedOperation.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.reaper.objects.aws;
2 |
3 | public abstract class BaseBatchedOperation
4 | {
5 | /**
6 | * Delays for the specified milliseconds, if greater than 0.
7 | * @param delayMillis The milliseconds to wait
8 | * @return true on success, false if interrupted
9 | */
10 | protected boolean delay(long delayMillis)
11 | {
12 | if(delayMillis <= 0) return true;
13 |
14 | try
15 | {
16 | Thread.sleep(delayMillis);
17 | return true;
18 | }
19 | catch(InterruptedException e)
20 | {
21 | return false;
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/module/module-json-helper/src/test/resources/testExpectedResult.json:
--------------------------------------------------------------------------------
1 | {
2 | "someObject" : {
3 | "mediainforef" : {
4 | "mediaProperties" : {
5 | "width" : 720,
6 | "height" : 480
7 | }
8 | },
9 | "mediainforefwidth" : 720
10 | },
11 | "arrayRef" : [ {
12 | "id" : "package",
13 | "payload" : {
14 | "setting" : "value"
15 | }
16 | }, {
17 | "id" : "encode",
18 | "payload" : {
19 | "setting" : "value"
20 | }
21 | } ],
22 | "anotherItem" : {
23 | "subitem" : {
24 | "childitem" : "encode"
25 | }
26 | },
27 | "stringref":"a value",
28 | "numberRef":42,
29 | "tokenNumber":42,
30 | "tokenString":"a value",
31 | "compositeString":"xa valuey",
32 | "agendaId":"456-789"
33 | }
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/agenda/aws/persistence/DynamoDBAgendaPersisterFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agenda.aws.persistence;
2 |
3 | import com.comcast.pop.api.Agenda;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBConvertedPersisterFactory;
5 | import com.comcast.pop.persistence.aws.dynamodb.TableIndexes;
6 |
7 | public class DynamoDBAgendaPersisterFactory extends DynamoDBConvertedPersisterFactory
8 | {
9 | private static final TableIndexes tableIndexes = new TableIndexes().withIndex("linkid_index", "linkId");
10 |
11 | public DynamoDBAgendaPersisterFactory()
12 | {
13 | super("id", Agenda.class, new PersistentAgendaConverter(), tableIndexes);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/test/java/com/comcast/pop/endpoint/resourcepool/aws/persistence/PersistentInsightConverterTest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.resourcepool.aws.persistence;
2 |
3 | import com.comcast.pop.api.facility.Insight;
4 | import org.testng.Assert;
5 | import org.testng.annotations.Test;
6 |
7 |
8 | public class PersistentInsightConverterTest
9 | {
10 | private PersistentInsightConverter converter = new PersistentInsightConverter();
11 | @Test
12 | public void testConvertToPersistence()
13 | {
14 | Insight dataObject = DataGenerator.generateInsight();
15 | PersistentInsight persistentObject = converter.getPersistentObject(dataObject);
16 | Assert.assertNotNull(persistentObject.getMappers());
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-client/src/main/java/com/comcast/pop/endpoint/client/ObjectClient.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.client;
2 |
3 | import com.comcast.pop.endpoint.api.data.DataObjectResponse;
4 | import com.comcast.pop.object.api.IdentifiedObject;
5 | import com.comcast.pop.persistence.api.query.Query;
6 |
7 | import java.util.List;
8 |
9 | public interface ObjectClient
10 | {
11 | DataObjectResponse getObjects(String queryParams);
12 | DataObjectResponse getObjects(List queries);
13 | DataObjectResponse getObject(String id);
14 | DataObjectResponse persistObject(T object);
15 | DataObjectResponse updateObject(T object, String id);
16 | DataObjectResponse deleteObject(String id);
17 | }
18 |
--------------------------------------------------------------------------------
/handler/handler-sample/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 | com.comcast.pop
6 | pop-root-handler
7 | 1.0.0
8 |
9 |
10 | 4.0.0
11 |
12 | pop-root-handler-sample
13 | 1.0.0
14 |
15 | pom
16 |
17 |
18 | api
19 | impl
20 | package
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/module/module-json-helper/src/test/java/com/comcast/pop/modules/jsonhelper/SampleObject.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.jsonhelper;
2 |
3 | public class SampleObject
4 | {
5 | private String id;
6 | private SampleObject subObject;
7 |
8 | public SampleObject()
9 | {
10 |
11 | }
12 |
13 | public String getId()
14 | {
15 | return id;
16 | }
17 |
18 | public SampleObject setId(String id)
19 | {
20 | this.id = id;
21 | return this;
22 | }
23 |
24 | public SampleObject getSubObject()
25 | {
26 | return subObject;
27 | }
28 |
29 | public SampleObject setSubObject(SampleObject subObject)
30 | {
31 | this.subObject = subObject;
32 | return this;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/module/module-queue-api/src/main/java/com/comcast/pop/modules/queue/api/access/ItemQueueViewer.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.queue.api.access;
2 |
3 | import com.comcast.pop.modules.queue.api.ItemQueue;
4 | import com.comcast.pop.modules.queue.api.QueueResult;
5 |
6 | /**
7 | * Provides view only queue access to an underlying ItemQueue
8 | */
9 | public class ItemQueueViewer
10 | {
11 | private final ItemQueue itemQueue;
12 |
13 | public ItemQueueViewer(ItemQueue itemQueue)
14 | {
15 | this.itemQueue = itemQueue;
16 | }
17 |
18 | public QueueResult peek()
19 | {
20 | return itemQueue.peek();
21 | }
22 |
23 | public QueueResult size()
24 | {
25 | return itemQueue.size();
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/data/query/ByFields.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.data.query;
2 |
3 | import com.comcast.pop.persistence.api.field.FieldsField;
4 | import com.comcast.pop.persistence.api.query.Query;
5 |
6 | /**
7 | * ByFields query to specify the fields you want returned from the query.
8 | * Example : title,customerId
9 | */
10 | public class ByFields extends Query
11 | {
12 | private static final FieldsField field = new FieldsField();
13 | public ByFields(String value)
14 | {
15 | setField(field);
16 | setValue(value);
17 | setCollection(false);
18 | }
19 | public static String fieldName()
20 | {
21 | return field.name();
22 | }
23 |
24 | }
25 |
26 |
--------------------------------------------------------------------------------
/endpoint/endpoint-functional-test/testng-functional.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/handler/handler-executor/impl/src/main/resources/com/comcast/pop/handler/executor/executorMessages.properties:
--------------------------------------------------------------------------------
1 | #keys are lowercase, enums are whatever enums should be (upper case)
2 | agenda_no_operations=No operations in Agenda. Nothing to do.
3 | operations_running=Running Operations
4 | operations_error=Error running operations
5 | operation_execution_error=Failed to execute operation: {0}
6 | operation_execution_incomplete=Failed to complete operation: {0} End ProcessingState: {1}
7 | operation_execution_incomplete_no_progress=Failed to complete operation: {0} No progress was reported.
8 | operation_resident_execution_failed=Resident execution failed for operation: {0}
9 | kubernetes_follow_error=Failed to follow kubernetes pod: {0}
10 | kubernetes_pod_failed=Kubernetes pod failed: {0}
11 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/test/resources/testConfigMap_BaseConfigMap.json:
--------------------------------------------------------------------------------
1 | {
2 | "basePodConfig": {
3 | "memoryRequestCount": "1000m",
4 | "cpuMinRequestCount": "1000m",
5 | "cpuMaxRequestCount": "1000m",
6 | "podScheduledTimeoutMs": 600000,
7 | "reapCompletedPods": true,
8 | "pullAlways": true,
9 | "configMapSettings": [
10 | {
11 | "volumeName":"config-volume-ex",
12 | "volumeMountPath":"/configex",
13 | "mapKeyPaths":[
14 | { "key": "X", "path": "Y"}
15 | ]
16 | }
17 | ]
18 | },
19 |
20 | "sample": {
21 | "configMapName": "lab-main-t-aor-fhsamp-t01",
22 | "podConfig": {
23 | "imageName": "your.repo.com/fhsamp:1.0.0",
24 | "namePrefix": "pop-samp"
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/endpoint/endpoint-base/src/main/java/com/comcast/pop/endpoint/base/visibility/VisibilityFilter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.base.visibility;
2 |
3 | import com.comcast.pop.endpoint.api.ServiceRequest;
4 | import com.comcast.pop.object.api.IdentifiedObject;
5 |
6 | import java.util.ArrayList;
7 | import java.util.List;
8 | import java.util.stream.Collectors;
9 |
10 | public abstract class VisibilityFilter
11 | {
12 | public abstract boolean isVisible(Req req, T object);
13 |
14 | public List filterByVisible(Req req, List objects)
15 | {
16 | if(objects == null) return new ArrayList<>();
17 |
18 | return objects.stream().filter(o -> isVisible(req, o)).collect(Collectors.toList());
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/module/module-queue-aws-sqs/impl/src/test/java/com/comcast/pop/modules/queue/aws/sqs/SQSItemQueueTestString.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.queue.aws.sqs;
2 |
3 | import org.testng.annotations.DataProvider;
4 |
5 | public class SQSItemQueueTestString extends SQSItemQueueTest
6 | {
7 | @Override
8 | public String getTestObject()
9 | {
10 | return "";
11 | }
12 |
13 | @Override
14 | public Class getTestObjectClass()
15 | {
16 | return String.class;
17 | }
18 |
19 | @Override
20 | @DataProvider
21 | public Object[][] itemsDataProvider()
22 | {
23 | return new Object[][]
24 | {
25 | {new String[] {"1"}},
26 | {new String[] {"1", "2"}}
27 | };
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/automated-retry/agenda-reclaimer-impl/src/main/java/com/comcast/pop/agenda/reclaim/exception/ReclaimerException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.agenda.reclaim.exception;
2 |
3 | public class ReclaimerException extends RuntimeException
4 | {
5 | public ReclaimerException(String message)
6 | {
7 | super(message);
8 | }
9 |
10 | public ReclaimerException(String message, Throwable cause)
11 | {
12 | super(message, cause);
13 | }
14 |
15 | public ReclaimerException(Throwable cause)
16 | {
17 | super(cause);
18 | }
19 |
20 | protected ReclaimerException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace)
21 | {
22 | super(message, cause, enableSuppression, writableStackTrace);
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/module/module-compression/src/test/java/com/comcast/pop/compression/zlib/ZlibUtilTest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.compression.zlib;
2 |
3 | import org.testng.Assert;
4 | import org.testng.annotations.BeforeMethod;
5 | import org.testng.annotations.Test;
6 |
7 | public class ZlibUtilTest
8 | {
9 | private ZlibUtil zlibUtil;
10 |
11 | @BeforeMethod
12 | public void setup()
13 | {
14 | zlibUtil = new ZlibUtil();
15 | }
16 |
17 | @Test
18 | public void testInflateDeflate() throws Exception
19 | {
20 | String original = "{\"foo\":\"bar\"}";
21 | byte[] in = original.getBytes("UTF-8");
22 | byte[] b = zlibUtil.deflateMe(in);
23 | String json = zlibUtil.inflateMe(b);
24 | Assert.assertEquals(json, original);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/automated-retry/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 | com.comcast.pop
6 | pop-root
7 | 1.0.7
8 |
9 |
10 | 4.0.0
11 |
12 | pop-root-retry
13 | 1.0.0
14 |
15 | pom
16 |
17 |
18 | agenda-reclaimer-impl
19 | agenda-reclaimer-aws
20 | callback-progress-retry-aws
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/config/converter/StringArrayPropertyConverter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.config.converter;
2 |
3 | /**
4 | * Converter from a String to a String[] based on the delimiter specified.
5 | */
6 | public class StringArrayPropertyConverter implements ConfigPropertyConverter
7 | {
8 | private final String delimiterRegex;
9 |
10 | public StringArrayPropertyConverter(String delimiterRegex)
11 | {
12 | this.delimiterRegex = delimiterRegex;
13 | }
14 |
15 | @Override
16 | public String[] convertPropertyValue(String propertyValue)
17 | {
18 | if(propertyValue != null)
19 | return propertyValue.split(delimiterRegex);
20 | return null;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/module/module-persistence/aws/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | com.comcast.pop.module
5 | pop-peristence-base
6 | 1.0.0
7 |
8 |
9 | 4.0.0
10 |
11 | pop-persistence-aws-parent
12 | 1.0.0
13 | pom
14 | Parent POM for AWS Persistence
15 |
16 |
17 |
18 |
19 | dynamodb
20 |
21 |
22 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/resourcepool/UpdateAgendaProgressRequest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.resourcepool;
2 |
3 | import com.comcast.pop.api.progress.AgendaProgress;
4 |
5 | public class UpdateAgendaProgressRequest
6 | {
7 | private AgendaProgress agendaProgress;
8 |
9 | public UpdateAgendaProgressRequest(AgendaProgress agendaProgress)
10 | {
11 | this.agendaProgress = agendaProgress;
12 | }
13 |
14 | public UpdateAgendaProgressRequest()
15 | {
16 | }
17 |
18 | public AgendaProgress getAgendaProgress()
19 | {
20 | return agendaProgress;
21 | }
22 |
23 | public void setAgendaProgress(AgendaProgress agendaProgress)
24 | {
25 | this.agendaProgress = agendaProgress;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-client/src/main/java/com/comcast/pop/endpoint/client/HttpObjectClientFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.client;
2 |
3 | import com.comcast.pop.http.api.HttpURLConnectionFactory;
4 | import com.comcast.pop.object.api.IdentifiedObject;
5 |
6 | public class HttpObjectClientFactory
7 | {
8 | private HttpURLConnectionFactory httpURLConnectionFactory;
9 |
10 | public HttpObjectClientFactory(HttpURLConnectionFactory httpURLConnectionFactory)
11 | {
12 | this.httpURLConnectionFactory = httpURLConnectionFactory;
13 | }
14 |
15 | public HttpObjectClient createClient(String endpointURL, Class objectClass)
16 | {
17 | return new HttpObjectClient<>(endpointURL, httpURLConnectionFactory, objectClass);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl/src/test/java/com/comcast/pop/endpoint/agenda/reporter/CaptureLogger.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agenda.reporter;
2 |
3 | import org.slf4j.helpers.SubstituteLogger;
4 |
5 | public class CaptureLogger extends SubstituteLogger
6 | {
7 | private static final String CAPTURE_LOGGER = "capture_logger";
8 | private StringBuilder builder = new StringBuilder();
9 |
10 | public CaptureLogger()
11 | {
12 | this(CAPTURE_LOGGER);
13 | }
14 |
15 | public CaptureLogger(String name)
16 | {
17 | super(name,null, true);
18 | }
19 |
20 | @Override
21 | public void info(String msg)
22 | {
23 | builder.append(msg);
24 | }
25 |
26 | public String getMsg()
27 | {
28 | return builder.toString();
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/handler/handler-base/src/test/java/com/comast/pop/handler/base/messages/TestMessages.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.messages;
2 |
3 | public enum TestMessages implements MessageLookup
4 | {
5 | SAMPLE_MESSAGE,
6 | SAMPLE_ARG_MESSAGE;
7 |
8 | public static final String RESOURCE_PATH = "com/comcast/pop/handler/base/messages/test";
9 | private static final ResourceBundleStringRetriever stringRetriever = new ResourceBundleStringRetriever(RESOURCE_PATH);
10 |
11 | private final String key = name().toLowerCase();
12 |
13 | @Override
14 | public String getMessage(Object... args)
15 | {
16 | return stringRetriever.getMessage(getKey(), args);
17 | }
18 |
19 | @Override
20 | public String getKey()
21 | {
22 | return key;
23 | }
24 |
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/alert/AlertException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.alert;
2 |
3 | public class AlertException extends RuntimeException
4 | {
5 | public AlertException()
6 | {
7 | }
8 |
9 | public AlertException(String message)
10 | {
11 | super(message);
12 | }
13 |
14 | public AlertException(String message, Throwable cause)
15 | {
16 | super(message, cause);
17 | }
18 |
19 | public AlertException(Throwable cause)
20 | {
21 | super(cause);
22 | }
23 |
24 | public AlertException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace)
25 | {
26 | super(message, cause, enableSuppression, writableStackTrace);
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/messages/HandlerMessages.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.messages;
2 |
3 | public enum HandlerMessages implements MessageLookup
4 | {
5 | GENERAL_HANDLER_ERROR,
6 | PAYLOAD_TRANSLATION_FAIL;
7 |
8 | public static final String RESOURCE_PATH = "com/comcast/pop/handler/handlerMessages";
9 | private static final ResourceBundleStringRetriever stringRetriever = new ResourceBundleStringRetriever(RESOURCE_PATH);
10 |
11 | private final String key = name().toLowerCase();
12 |
13 | @Override
14 | public String getMessage(Object... args)
15 | {
16 | return stringRetriever.getMessage(getKey(), args);
17 | }
18 |
19 | @Override
20 | public String getKey()
21 | {
22 | return key;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/handler/handler-base/src/main/java/com/comast/pop/handler/base/validation/string/MultiStringValidator.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.validation.string;
2 |
3 | import java.util.List;
4 |
5 | public class MultiStringValidator implements StringValidator
6 | {
7 | private List validators;
8 |
9 | public MultiStringValidator(List validators)
10 | {
11 | this.validators = validators;
12 | }
13 |
14 | public void addValidator(StringValidator validator)
15 | {
16 | validators.add(validator);
17 | }
18 |
19 | @Override
20 | public void validate(String input)
21 | {
22 | if(validators == null) return;
23 | for(StringValidator validator : validators)
24 | validator.validate(input);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/handler/handler-sample/api/src/main/java/com/comcast/pop/handler/sample/api/SampleInput.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.api;
2 |
3 | import com.comcast.pop.api.params.ParamsMap;
4 |
5 | import java.util.List;
6 |
7 | public class SampleInput
8 | {
9 | private List actions;
10 | private ParamsMap resultPayload;
11 |
12 | public List getActions()
13 | {
14 | return actions;
15 | }
16 |
17 | public void setActions(List actions)
18 | {
19 | this.actions = actions;
20 | }
21 |
22 | public ParamsMap getResultPayload()
23 | {
24 | return resultPayload;
25 | }
26 |
27 | public void setResultPayload(ParamsMap resultPayload)
28 | {
29 | this.resultPayload = resultPayload;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/handler/handler-puller/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | com.comcast.pop
5 | pop-root-handler
6 | 1.0.0
7 |
8 |
9 | 4.0.0
10 |
11 | com.comcast.pop.handler
12 | pop-handler-puller-parent
13 | 1.0.0
14 | pom
15 | Puller Handler Parent
16 |
17 |
18 | impl
19 | package
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/module/module-monitor/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | com.comcast.pop
5 | pop-root-module
6 | 1.0.0
7 |
8 |
9 | 4.0.0
10 |
11 | com.comcast.pop.module
12 | pop-monitor-parent
13 | 1.0.0
14 | pom
15 | Alerts and Monitoring Parent Project
16 |
17 |
18 | main
19 | graphite
20 |
21 |
22 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/resourcepool/aws/persistence/DynamoDBResourcePoolPersisterFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.resourcepool.aws.persistence;
2 |
3 | import com.comcast.pop.api.facility.ResourcePool;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBConvertedPersisterFactory;
5 | import com.comcast.pop.persistence.aws.dynamodb.TableIndexes;
6 |
7 | /**
8 | */
9 | public class DynamoDBResourcePoolPersisterFactory extends DynamoDBConvertedPersisterFactory
10 | {
11 | protected static final TableIndexes tableIndexes = new TableIndexes();
12 |
13 | public DynamoDBResourcePoolPersisterFactory()
14 | {
15 | super("id", ResourcePool.class, new PersistentResourcePoolConverter(), tableIndexes);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/handler/handler-sample/impl/src/main/java/com/comcast/pop/handler/sample/impl/action/ExceptionAction.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.impl.action;
2 |
3 | import com.comast.pop.handler.base.progress.reporter.operation.OperationProgressReporter;
4 | import com.comcast.pop.handler.sample.api.ActionParameters;
5 | import org.slf4j.Logger;
6 | import org.slf4j.LoggerFactory;
7 |
8 | public class ExceptionAction extends BaseAction
9 | {
10 | private static Logger logger = LoggerFactory.getLogger(ExceptionAction.class);
11 |
12 | @Override
13 | protected void perform(OperationProgressReporter reporter, ActionParameters actionParameters)
14 | {
15 | logger.info("About to throw a planned exception...");
16 | throw new RuntimeException(actionParameters.getExceptionMessage());
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/module/module-kube-client/fabric8/src/main/java/com/comcast/pop/modules/kube/fabric8/client/factory/PodPushClientFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.client.factory;
2 |
3 | import com.comcast.pop.modules.kube.client.CpuRequestModulator;
4 | import com.comcast.pop.modules.kube.client.config.KubeConfig;
5 | import com.comcast.pop.modules.kube.fabric8.client.PodPushClient;
6 |
7 | abstract public class PodPushClientFactory
8 | {
9 | protected KubeConfig kubeConfig;
10 |
11 | public KubeConfig getKubeConfig()
12 | {
13 | return kubeConfig;
14 | }
15 |
16 | public void setKubeConfig(KubeConfig kubeConfig)
17 | {
18 | this.kubeConfig = kubeConfig;
19 | }
20 |
21 | abstract public PodPushClient getClient(KubeConfig kubeConfig);
22 | }
23 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/data/query/ByCount.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.data.query;
2 |
3 | import com.comcast.pop.persistence.api.field.CountField;
4 | import com.comcast.pop.persistence.api.query.Query;
5 |
6 | /**
7 | * ByCount only returns the count of entries and not the actual entries
8 | */
9 | public class ByCount extends Query
10 | {
11 | private static final CountField field = new CountField();
12 | public ByCount(Boolean value)
13 | {
14 | if(value == null)
15 | {
16 | value = true;
17 | }
18 |
19 | setField(field);
20 | setValue(value);
21 | setCollection(false);
22 | }
23 |
24 | public static String fieldName()
25 | {
26 | return field.name();
27 | }
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/module/module-kube-client/fabric8/src/main/java/com/comcast/pop/modules/kube/fabric8/client/exception/PodException.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.kube.fabric8.client.exception;
2 |
3 | public class PodException extends RuntimeException
4 | {
5 | public PodException()
6 | {
7 | }
8 |
9 | public PodException(String message)
10 | {
11 | super(message);
12 | }
13 |
14 | public PodException(String message, Throwable cause)
15 | {
16 | super(message, cause);
17 | }
18 |
19 | public PodException(Throwable cause)
20 | {
21 | super(cause);
22 | }
23 |
24 | public PodException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace)
25 | {
26 | super(message, cause, enableSuppression, writableStackTrace);
27 | }
28 | }
--------------------------------------------------------------------------------
/module/module-queue-api/src/main/java/com/comcast/pop/modules/queue/api/access/ItemQueueWriter.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.queue.api.access;
2 |
3 | import com.comcast.pop.modules.queue.api.ItemQueue;
4 | import com.comcast.pop.modules.queue.api.QueueResult;
5 |
6 | import java.util.Collection;
7 |
8 | /**
9 | * Provides write access to an underlying ItemQueue
10 | */
11 | public class ItemQueueWriter
12 | {
13 | private final ItemQueue itemQueue;
14 |
15 | public ItemQueueWriter(ItemQueue itemQueue)
16 | {
17 | this.itemQueue = itemQueue;
18 | }
19 |
20 | public QueueResult add(T item)
21 | {
22 | return itemQueue.add(item);
23 | }
24 |
25 | public QueueResult add(Collection items)
26 | {
27 | return itemQueue.add(items);
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/module/module-queue-aws-sqs/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 |
8 | com.comcast.pop
9 | pop-root-module
10 | 1.0.0
11 |
12 |
13 | com.comcast.pop.module
14 | pop-module-queue-aws-sqs-base
15 | 1.0.0
16 | pom
17 |
18 |
19 | api
20 | impl
21 |
22 |
--------------------------------------------------------------------------------
/endpoint/endpoint-functional-test/src/test/resources/test.properties:
--------------------------------------------------------------------------------
1 | test.customerId=account/3131523765
2 |
3 | test.insightQueueName=POP-Test-Queue
4 | test.insightOperation=sample
5 | test.insightId=547cc659-f7a3-4fbe-b171-a2d0ad355b4d
6 | test.resourcePoolId=599f2241-3877-4301-b3d2-aa7e4274e42a
7 |
8 | endpoint.url=https:///dev
9 |
10 | # Endpoint paths
11 | agenda.path=/pop/agenda
12 | agenda.service.path=/pop/agenda/service
13 | agendatemplate.path=/pop/agendatemplate
14 | customer.path=/pop/customer
15 | insight.path=/pop/insight
16 | resource.pool.path=/pop/resourcepool
17 | transform.request.path=/pop/transform
18 | agenda.progress.path=/pop/progress/agenda
19 | operation.progress.path=/pop/progress/operation
20 | progress.provider.url=/pop/progress/agenda/service
21 | resource.pool.service.path=/pop/resourcepool/service
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/resourcepool/aws/persistence/DynamoDBInsightPersisterFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.resourcepool.aws.persistence;
2 |
3 | import com.comcast.pop.api.facility.Insight;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBConvertedPersisterFactory;
5 | import com.comcast.pop.persistence.aws.dynamodb.TableIndexes;
6 |
7 | /**
8 | */
9 | public class DynamoDBInsightPersisterFactory extends DynamoDBConvertedPersisterFactory
10 | {
11 | protected static final TableIndexes tableIndexes = new TableIndexes().withIndex("resourcepoolid_index", "resourcePoolId");
12 |
13 | public DynamoDBInsightPersisterFactory()
14 | {
15 | super("id", Insight.class, new PersistentInsightConverter(), tableIndexes);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/test/resources/testConfigMap.json:
--------------------------------------------------------------------------------
1 | {
2 | "basePodConfig": {
3 | "memoryRequestCount": "1000m",
4 | "cpuMinRequestCount": "1000m",
5 | "cpuMaxRequestCount": "1000m",
6 | "podScheduledTimeoutMs": 600000,
7 | "reapCompletedPods": true,
8 | "pullAlways": true
9 | },
10 |
11 | "sample": {
12 | "configMapName": "lab-main-t-aor-fhsamp-t01",
13 | "podConfig": {
14 | "imageName": "your.repo.com/fhsamp:1.0.0",
15 | "namePrefix": "pop-samp",
16 | "configMapSettings": [
17 | {
18 | "volumeName":"config-volume-ex",
19 | "volumeMountPath":"/configex",
20 | "mapKeyPaths":[
21 | { "key": "1", "path": "2"},
22 | { "key": "3", "path": "4"}
23 | ]
24 | }
25 | ]
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | com.comcast.pop
5 | pop-root-handler
6 | 1.0.0
7 |
8 |
9 |
10 | 4.0.0
11 |
12 | com.comcast.pop.handler
13 | pop-handler-pod-reaper-parent
14 | 1.0.0
15 | pom
16 | Handler Pod Reaper Parent
17 |
18 |
19 | impl
20 | package
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/resourcepool/aws/persistence/DynamoDBCustomerPersisterFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.resourcepool.aws.persistence;
2 |
3 | import com.comcast.pop.api.facility.Customer;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBConvertedPersisterFactory;
5 | import com.comcast.pop.persistence.aws.dynamodb.TableIndexes;
6 |
7 | /**
8 | */
9 | public class DynamoDBCustomerPersisterFactory extends DynamoDBConvertedPersisterFactory
10 | {
11 | protected static final TableIndexes tableIndexes = new TableIndexes().withIndex("resourcepoolid_index", "resourcePoolId");
12 |
13 | public DynamoDBCustomerPersisterFactory()
14 | {
15 | super("id", Customer.class, new PersistentCustomerConverter(), tableIndexes);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/module/module-monitor/main/src/main/java/com/comcast/pop/modules/monitor/alive/LogAliveCheckListener.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.monitor.alive;
2 |
3 | import org.slf4j.Logger;
4 | import org.slf4j.LoggerFactory;
5 |
6 | /**
7 | * Simple logger listener for alive checks
8 | */
9 | public class LogAliveCheckListener implements AliveCheckListener
10 | {
11 | private static final Logger logger = LoggerFactory.getLogger(LogAliveCheckListener.class);
12 |
13 | @Override
14 | public void processAliveCheck(boolean isAlive)
15 | {
16 | if(isAlive && logger.isDebugEnabled())
17 | {
18 | logger.debug("Received a successful alive check.");
19 | }
20 | else if(!isAlive)
21 | {
22 | logger.error("Received a failed alive check.");
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/ServiceRequest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api;
2 |
3 | import com.comcast.pop.endpoint.api.auth.AuthorizationResponse;
4 |
5 | public interface ServiceRequest
6 | {
7 | /**
8 | * Gets the HTTP method of the request or defaults
9 | * @param defaultValue The default to return if the method cannot be found
10 | * @return HTTP method or default
11 | */
12 | String getHTTPMethod(String defaultValue);
13 |
14 | String getEndpoint();
15 |
16 | String getAuthorizationHeader();
17 |
18 | String getHeader(String header);
19 |
20 | String getCID();
21 |
22 | T getPayload();
23 |
24 | AuthorizationResponse getAuthorizationResponse();
25 |
26 | void setAuthorizationResponse(AuthorizationResponse authorizationResponse);
27 | }
28 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/agendatemplate/aws/persistence/DynamoDBAgendaTemplatePersisterFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.agendatemplate.aws.persistence;
2 |
3 | import com.comcast.pop.api.AgendaTemplate;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBConvertedPersisterFactory;
5 | import com.comcast.pop.persistence.aws.dynamodb.TableIndexes;
6 |
7 | public class DynamoDBAgendaTemplatePersisterFactory extends DynamoDBConvertedPersisterFactory
8 | {
9 | private static final TableIndexes tableIndexes = new TableIndexes().withIndex("title_index", "title");
10 |
11 | public DynamoDBAgendaTemplatePersisterFactory()
12 | {
13 | super("id", AgendaTemplate.class, new PersistentAgendaTemplateConverter(), tableIndexes);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-aws/src/main/java/com/comcast/pop/endpoint/progress/aws/persistence/DynamoDBAgendaProgressPersisterFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.progress.aws.persistence;
2 |
3 | import com.comcast.pop.api.progress.AgendaProgress;
4 | import com.comcast.pop.persistence.aws.dynamodb.DynamoDBConvertedPersisterFactory;
5 | import com.comcast.pop.persistence.aws.dynamodb.TableIndexes;
6 |
7 | public class DynamoDBAgendaProgressPersisterFactory extends DynamoDBConvertedPersisterFactory
8 | {
9 | private static final TableIndexes tableIndexes = new TableIndexes().withIndex("linkid_index", "linkId");
10 |
11 | public DynamoDBAgendaProgressPersisterFactory()
12 | {
13 | super("id", AgendaProgress.class, new PersistentAgendaProgressConverter(), tableIndexes);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/data/query/ById.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.data.query;
2 |
3 | import com.comcast.pop.persistence.api.field.IdField;
4 | import com.comcast.pop.persistence.api.query.Query;
5 |
6 | /**
7 | * ById field equality query.
8 | */
9 | public class ById extends Query
10 | {
11 | private static final IdField field = new IdField();
12 | public ById(String value)
13 | {
14 | if(value == null || value.isEmpty())
15 | {
16 | throw new IllegalArgumentException("ById query requires a non-empty value.");
17 | }
18 |
19 | setField(field);
20 | setValue(value);
21 | setCollection(false);
22 | }
23 |
24 | public static String fieldName()
25 | {
26 | return field.name();
27 | }
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/payload/compression/CompressedEnvironmentPayloadUtil.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.payload.compression;
2 |
3 | import com.comcast.pop.compression.zlib.ZlibUtil;
4 |
5 |
6 | public class CompressedEnvironmentPayloadUtil
7 | {
8 | private static final String PAYLOAD_FIELD_FORMAT = "POP_COMPRESSED_PAYLOAD_%1$s";
9 |
10 | private ZlibUtil zlibUtil = new ZlibUtil();
11 |
12 | public void setZlibUtil(ZlibUtil zlibUtil)
13 | {
14 | this.zlibUtil = zlibUtil;
15 | }
16 |
17 | public ZlibUtil getZlibUtil()
18 | {
19 | return zlibUtil;
20 | }
21 |
22 | public String getEnvironmentVariableName(int index)
23 | {
24 | return String.format(PAYLOAD_FIELD_FORMAT, index);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/module/module-kube-client/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | com.comcast.pop
5 | pop-root-module
6 | 1.0.0
7 |
8 |
9 | 4.0.0
10 |
11 | com.comcast.pop.module
12 | pop-kube-client-parent
13 | 1.0.0
14 | pom
15 | Kubernetes Client Parent Project
16 |
17 |
18 | api
19 | fabric8
20 | test/main
21 |
22 |
--------------------------------------------------------------------------------
/handler/handler-kubernetes-support/src/main/java/com/comcast/pop/handler/kubernetes/support/payload/PayloadField.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.kubernetes.support.payload;
2 |
3 | import com.comast.pop.handler.base.field.retriever.api.NamedField;
4 |
5 | public enum PayloadField implements NamedField
6 | {
7 | // specifies the type of output this component should use (generally a property)
8 | PAYLOAD_OUTPUT_TYPE_PROPERTY("pop.payload.outputType"),
9 | // specifies the type of payload this component should attempt to read (generally an env var)
10 | PAYLOAD_TYPE_ENV_VAR("POP_PAYLOAD_TYPE");
11 |
12 | private final String fieldName;
13 |
14 | PayloadField(String fieldName)
15 | {
16 | this.fieldName = fieldName;
17 | }
18 |
19 | public String getFieldName()
20 | {
21 | return fieldName;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/impl/src/test/java/com/comcast/pop/handler/reaper/impl/ReaperTestUtil.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.reaper.impl;
2 |
3 | import io.fabric8.kubernetes.api.model.ObjectMeta;
4 | import io.fabric8.kubernetes.api.model.Pod;
5 |
6 | import java.util.LinkedList;
7 | import java.util.List;
8 | import java.util.stream.IntStream;
9 |
10 | public class ReaperTestUtil
11 | {
12 | public static List createPodList(int count)
13 | {
14 | List pods = new LinkedList<>();
15 | IntStream.range(0, count).forEach(i ->
16 | {
17 | Pod pod = new Pod();
18 | ObjectMeta objectMeta = new ObjectMeta();
19 | objectMeta.setName(Integer.toString(i));
20 | pod.setMetadata(objectMeta);
21 | pods.add(pod);
22 | });
23 | return pods;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/handler/handler-puller/impl/src/test/java/com/comcast/pop/handler/puller/impl/PullerExecutionTest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.puller.impl;
2 |
3 | import org.testng.Assert;
4 | import org.testng.annotations.Test;
5 |
6 | import static org.mockito.Mockito.mock;
7 |
8 | /**
9 | */
10 | public class PullerExecutionTest
11 | {
12 |
13 | @Test
14 | public void testAbort() throws InterruptedException
15 | {
16 | PullerEntryPoint entryPointMock = mock(PullerEntryPoint.class);
17 |
18 | PullerExecution pullerExecution = new PullerExecution(entryPointMock);
19 | pullerExecution.start();
20 |
21 | Thread.sleep(1000);
22 |
23 | pullerExecution.getExecutionContext().stopThread();
24 | Thread.sleep(1000);
25 | Assert.assertFalse(pullerExecution.getExecutionContext().isThreadAlive());
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/module/module-producer-consumer-util/src/main/java/com/comcast/pop/modules/sync/util/ProducerResult.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.modules.sync.util;
2 |
3 | import java.util.Collection;
4 |
5 | public class ProducerResult
6 | {
7 | private boolean interrupted;
8 | private Collection itemsProduced;
9 |
10 | public Collection getItemsProduced()
11 | {
12 | return itemsProduced;
13 | }
14 |
15 | public ProducerResult setItemsProduced(Collection itemsProduced)
16 | {
17 | this.itemsProduced = itemsProduced;
18 | return this;
19 | }
20 |
21 | public boolean isInterrupted()
22 | {
23 | return interrupted;
24 | }
25 |
26 | public ProducerResult setInterrupted(boolean interrupted)
27 | {
28 | this.interrupted = interrupted;
29 | return this;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/endpoint/endpoint-impl-client/src/main/java/com/comcast/pop/endpoint/client/ResourcePoolServiceClientFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.client;
2 |
3 | import com.comcast.pop.endpoint.client.resourcepool.ResourcePoolServiceConfig;
4 | import com.comcast.pop.http.api.HttpURLConnectionFactory;
5 |
6 | public class ResourcePoolServiceClientFactory
7 | {
8 | public ResourcePoolServiceClient create(ResourcePoolServiceConfig resourcePoolServiceConfig, HttpURLConnectionFactory httpUrlConnectionFactory)
9 | {
10 | return new ResourcePoolServiceClient(resourcePoolServiceConfig, httpUrlConnectionFactory);
11 | }
12 |
13 | public ResourcePoolServiceClient create(String serviceUrl, HttpURLConnectionFactory httpUrlConnectionFactory)
14 | {
15 | return new ResourcePoolServiceClient(serviceUrl, httpUrlConnectionFactory);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/handler/handler-base/src/test/java/com/comast/pop/handler/base/progress/reporter/BaseReporterThreadConfigTest.java:
--------------------------------------------------------------------------------
1 | package com.comast.pop.handler.base.progress.reporter;
2 |
3 | import org.testng.Assert;
4 | import org.testng.annotations.Test;
5 |
6 | public class BaseReporterThreadConfigTest
7 | {
8 | @Test
9 | public void testSetters()
10 | {
11 | // just a paranoia check for the templating stuff
12 | final int MAX_ATTEMPTS = 10;
13 | final int INTERVAL = 45;
14 |
15 | TestConfig testConfig = new TestConfig();
16 | testConfig = testConfig.setMaxReportAttemptsAfterShutdown(MAX_ATTEMPTS).setUpdateIntervalMilliseconds(INTERVAL);
17 | Assert.assertEquals(testConfig.getMaxReportAttemptsAfterShutdown(), MAX_ATTEMPTS);
18 | Assert.assertEquals(testConfig.getUpdateIntervalMilliseconds(), INTERVAL);
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/scheduling/scheduling-queue-impl/src/main/java/com/comcast/pop/scheduling/queue/algorithm/AgendaScheduler.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.scheduling.queue.algorithm;
2 |
3 | import com.comcast.pop.api.facility.Insight;
4 | import com.comcast.pop.scheduling.api.ReadyAgenda;
5 | import com.comcast.pop.scheduling.queue.InsightScheduleInfo;
6 |
7 | import java.util.List;
8 |
9 | public interface AgendaScheduler
10 | {
11 | /**
12 | * Returns the ReadyAgenda objects to be scheduled.
13 | * @param requestedCount The number of ReadyAgenda objects requested
14 | * @param insight The insight to schedule with
15 | * @param insightScheduleInfo The queue information for the insight
16 | * @return A list of ReadyAgenda object or null
17 | */
18 | List schedule(int requestedCount, Insight insight, InsightScheduleInfo insightScheduleInfo);
19 | }
20 |
--------------------------------------------------------------------------------
/handler/handler-sample/impl/src/main/java/com/comcast/pop/handler/sample/impl/action/ActionMap.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.sample.impl.action;
2 |
3 | import com.comcast.pop.handler.sample.api.SampleActions;
4 |
5 | import java.util.HashMap;
6 | import java.util.Map;
7 |
8 | public class ActionMap
9 | {
10 | private final static Map ACTION_MAP;
11 | static
12 | {
13 | ACTION_MAP = new HashMap<>();
14 | ACTION_MAP.put(SampleActions.exception.name(), new ExceptionAction());
15 | ACTION_MAP.put(SampleActions.log.name(), new LogAction());
16 | }
17 |
18 | public void addAction(String actionName, BaseAction action)
19 | {
20 | ACTION_MAP.put(actionName, action);
21 | }
22 |
23 | public BaseAction getAction(String actionName)
24 | {
25 | return ACTION_MAP.get(actionName);
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/data/query/resourcepool/insight/ByInsightId.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.data.query.resourcepool.insight;
2 |
3 | import com.comcast.pop.persistence.api.field.DataObjectField;
4 | import com.comcast.pop.persistence.api.query.Query;
5 |
6 | public class ByInsightId extends Query
7 | {
8 | private static final DataObjectField field = new DataObjectField("insightId");
9 | public ByInsightId(String value)
10 | {
11 | if(value == null || value.isEmpty())
12 | {
13 | throw new IllegalArgumentException("By Query requires a non-empty value.");
14 | }
15 |
16 | setField(field);
17 | setValue(value);
18 | setCollection(false);
19 | }
20 |
21 | public static String fieldName()
22 | {
23 | return field.name();
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/data/query/scheduling/ByAgendaId.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.data.query.scheduling;
2 |
3 | import com.comcast.pop.persistence.api.field.DataObjectField;
4 | import com.comcast.pop.persistence.api.query.Query;
5 |
6 | /**
7 | */
8 | public class ByAgendaId extends Query
9 | {
10 | private static final String fieldName = "agendaId";
11 | public ByAgendaId(String value)
12 | {
13 | if(value == null || value.isEmpty())
14 | {
15 | throw new IllegalArgumentException("ByAgendaId query requires a non-empty value.");
16 | }
17 |
18 | setField(new DataObjectField(fieldName));
19 | setValue(value);
20 | setCollection(false);
21 | }
22 |
23 | public static String fieldName()
24 | {
25 | return fieldName;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/module/module-persistence/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | com.comcast.pop
5 | pop-root-module
6 | 1.0.0
7 |
8 |
9 | 4.0.0
10 |
11 | com.comcast.pop.module
12 | pop-peristence-base
13 | 1.0.0
14 | pom
15 | Parent POM for Persistence
16 |
17 |
18 |
19 |
20 | api
21 | impl
22 | aws
23 |
24 |
25 |
--------------------------------------------------------------------------------
/scheduling/scheduling-monitor-impl/src/main/java/com/comcast/pop/scheduling/monitor/QueueMetricMonitorFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.scheduling.monitor;
2 |
3 | import com.comcast.pop.api.facility.Insight;
4 | import com.comcast.pop.modules.monitor.metric.MetricReporter;
5 | import com.comcast.pop.scheduling.api.ReadyAgenda;
6 | import com.comcast.pop.endpoint.client.ObjectClient;
7 | import com.comcast.pop.persistence.api.ObjectPersister;
8 |
9 | public class QueueMetricMonitorFactory
10 | {
11 | public QueueMetricMonitorFactory()
12 | {
13 | }
14 |
15 | public QueueMetricMonitor createQueueMonitor(
16 | ObjectPersister readyAgendaPersister,
17 | ObjectClient insightClient,
18 | MetricReporter reporter)
19 | {
20 | return new QueueMetricMonitor(readyAgendaPersister, insightClient, reporter);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/endpoint/endpoint-api/src/main/java/com/comcast/pop/endpoint/api/data/query/ByTitle.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.endpoint.api.data.query;
2 |
3 | import com.comcast.pop.persistence.api.field.DataObjectField;
4 | import com.comcast.pop.persistence.api.query.Query;
5 |
6 | /**
7 | * ByTitle field equality query.
8 | */
9 | public class ByTitle extends Query
10 | {
11 | private static final DataObjectField field = new DataObjectField("title");
12 | public ByTitle(String value)
13 | {
14 | if(value == null || value.isEmpty())
15 | {
16 | throw new IllegalArgumentException("ByTitle query requires a non-empty value.");
17 | }
18 |
19 | setField(field);
20 | setValue(value);
21 | setCollection(false);
22 | }
23 |
24 | public static String fieldName()
25 | {
26 | return field.name();
27 | }
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/handler/handler-pod-reaper/impl/src/main/java/com/comcast/pop/handler/reaper/impl/context/ReaperContext.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.handler.reaper.impl.context;
2 |
3 | import com.comast.pop.handler.base.context.BaseOperationContext;
4 | import com.comast.pop.handler.base.field.retriever.LaunchDataWrapper;
5 | import org.slf4j.Logger;
6 | import org.slf4j.LoggerFactory;
7 |
8 | /**
9 | * The context for the Reaper
10 | */
11 | public class ReaperContext extends BaseOperationContext
12 | {
13 | private static Logger logger = LoggerFactory.getLogger(ReaperContext.class);
14 |
15 | public ReaperContext(LaunchDataWrapper launchDataWrapper)
16 | {
17 | super(launchDataWrapper);
18 | }
19 |
20 | @Override
21 | public void processUnhandledException(String s, Exception e)
22 | {
23 | logger.error("Failed to run reaper.", e);
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/module/module-persistence/aws/dynamodb/src/main/java/com/comcast/pop/persistence/aws/dynamodb/retrieve/DynamoObjectRetrieverFactory.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.persistence.aws.dynamodb.retrieve;
2 |
3 | import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper;
4 | import com.comcast.pop.object.api.IdentifiedObject;
5 | import com.comcast.pop.persistence.aws.dynamodb.QueryExpression;
6 |
7 | public class DynamoObjectRetrieverFactory
8 | {
9 | public ObjectRetriever createObjectRetriever(QueryExpression queryExpression, Class dataObjectClass, DynamoDBMapper dynamoDBMapper)
10 | {
11 | if(queryExpression.hasKey())
12 | return new DynamoQueryObjectRetriever<>(queryExpression, dataObjectClass, dynamoDBMapper);
13 | return new DynamoScanObjectRetriever<>(queryExpression, dataObjectClass, dynamoDBMapper);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/scheduling/scheduling-monitor-aws/src/main/java/com/comcast/pop/scheduling/monitor/aws/ResourcePoolMonitorRequest.java:
--------------------------------------------------------------------------------
1 | package com.comcast.pop.scheduling.monitor.aws;
2 |
3 | public class ResourcePoolMonitorRequest
4 | {
5 | private String resourcePoolId;
6 | private String stageId;
7 |
8 | public ResourcePoolMonitorRequest()
9 | {
10 | }
11 |
12 | public String getResourcePoolId()
13 | {
14 | return resourcePoolId;
15 | }
16 |
17 | public ResourcePoolMonitorRequest setResourcePoolId(String resourcePoolId)
18 | {
19 | this.resourcePoolId = resourcePoolId;
20 | return this;
21 | }
22 |
23 | public String getStageId()
24 | {
25 | return stageId;
26 | }
27 |
28 | public ResourcePoolMonitorRequest setStageId(String stageId)
29 | {
30 | this.stageId = stageId;
31 | return this;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------