@RestController @RequestMapping(value="/streams/definitions") @ExposesResourceFor(value=StreamDefinitionResource.class) public class StreamDefinitionController extends Object
StreamDefinition
. This includes CRUD and optional
deployment operations.Constructor and Description |
---|
StreamDefinitionController(StreamDefinitionRepository repository,
AppRegistryCommon appRegistry,
StreamService streamService)
Create a
StreamDefinitionController that delegates
CRUD operations to the provided StreamDefinitionRepository
deployment operations and status computation via StreamService
|
Modifier and Type | Method and Description |
---|---|
static org.springframework.cloud.deployer.spi.app.DeploymentState |
aggregateState(Set<org.springframework.cloud.deployer.spi.app.DeploymentState> states)
Aggregate the set of app states into a single state for a stream.
|
void |
delete(String name)
Request removal of an existing stream definition.
|
void |
deleteAll()
Request removal of all stream definitions.
|
StreamDefinitionResource |
display(String name)
Return a given stream definition resource.
|
org.springframework.hateoas.PagedResources<StreamDefinitionResource> |
list(org.springframework.data.domain.Pageable pageable,
String search,
org.springframework.data.web.PagedResourcesAssembler<StreamDefinition> assembler)
Return a page-able list of
StreamDefinitionResource defined streams. |
org.springframework.hateoas.PagedResources<StreamDefinitionResource> |
listRelated(org.springframework.data.domain.Pageable pageable,
String name,
boolean nested,
org.springframework.data.web.PagedResourcesAssembler<StreamDefinition> assembler)
Return a list of related stream definition resources based on the given stream name.
|
StreamDefinitionResource |
save(String name,
String dsl,
boolean deploy)
Create a new stream.
|
public StreamDefinitionController(StreamDefinitionRepository repository, AppRegistryCommon appRegistry, StreamService streamService)
StreamDefinitionController
that delegates
StreamDefinitionRepository
StreamService
repository
- the streamDefinitionRepository this controller will use for stream
CRUD operationsappRegistry
- the app registry to look up registered appsstreamService
- the stream service to use to delegate stream operations such as
deploy/status.public static org.springframework.cloud.deployer.spi.app.DeploymentState aggregateState(Set<org.springframework.cloud.deployer.spi.app.DeploymentState> states)
states
- set of states for apps of a stream@RequestMapping(value="", method=GET) @ResponseStatus(value=OK) public org.springframework.hateoas.PagedResources<StreamDefinitionResource> list(org.springframework.data.domain.Pageable pageable, @RequestParam(required=false) String search, org.springframework.data.web.PagedResourcesAssembler<StreamDefinition> assembler)
StreamDefinitionResource
defined streams.pageable
- page-able collection of StreamDefinitionResource
s.assembler
- assembler for StreamDefinition
search
- optional search parameter@RequestMapping(value="", method=POST) @ResponseStatus(value=CREATED) public StreamDefinitionResource save(@RequestParam(value="name") String name, @RequestParam(value="definition") String dsl, @RequestParam(value="deploy",defaultValue="false") boolean deploy)
name
- stream namedsl
- DSL definition for streamdeploy
- if true
, the stream is deployed upon creation (default is
false
)DuplicateStreamDefinitionException
- if a stream definition with the same name
already existsInvalidStreamDefinitionException
- if there errors in parsing the stream DSL,
resolving the name, or type of applications in the stream@RequestMapping(value="/{name}", method=DELETE) @ResponseStatus(value=OK) public void delete(@PathVariable(value="name") String name)
name
- the name of an existing stream definition (required)@RequestMapping(value="/{name}/related", method=GET) @ResponseStatus(value=OK) public org.springframework.hateoas.PagedResources<StreamDefinitionResource> listRelated(org.springframework.data.domain.Pageable pageable, @PathVariable(value="name") String name, @RequestParam(value="nested",required=false,defaultValue="false") boolean nested, org.springframework.data.web.PagedResourcesAssembler<StreamDefinition> assembler)
name
- the name of an existing stream definition (required)nested
- if should recursively search for related stream definitionsassembler
- resource assembler for stream definition@RequestMapping(value="/{name}", method=GET) @ResponseStatus(value=OK) public StreamDefinitionResource display(@PathVariable(value="name") String name)
name
- the name of an existing stream definition (required)@RequestMapping(value="", method=DELETE) @ResponseStatus(value=OK) public void deleteAll()
Copyright © 2018 Pivotal Software, Inc.. All rights reserved.