Package-level declarations

Types

Link copied to clipboard
@Summary(value = "Make a shared view personal")
@CommandRoute(enabled = false)
data class ClaimView(val toOwnerId: String)

Makes a shared view personal to toOwnerId, in place. It has no generated route: the view store's route PUT …/owner/{ownerId}/view/{id}/claim is sent to the caller's own personal path, takes toOwnerId from that path, and dispatches this command to the view's current owner, (shared), since Wow checks a command's owner against the view's. The id stays.

Link copied to clipboard
@Order(value = 1)
@Summary(value = "Create a view")
data class CreateView(val definitionId: String, val title: String, val config: ObjectNode)

Saves a new view under the path's owner, which is its audience. The server generates its id and takes its application from CoSec-App-Id.

Link copied to clipboard
@Order(value = 5)
@Summary(value = "Delete a view")
object DeleteView : DeleteAggregate

Deletes a view (soft, as Wow deletes an aggregate): DELETE …/view/{id} with the body {}, carrying the expected version.

Link copied to clipboard
@Order(value = 3)
@Summary(value = "Rename a view")
@CommandRoute(action = "rename", method = CommandRoute.Method.PUT, appendIdPath = CommandRoute.AppendPath.ALWAYS)
data class RenameView(val title: String)

Renames a view; carries the expected version.

Link copied to clipboard
@Order(value = 2)
@Summary(value = "Save a view's config")
@CommandRoute(action = "save", method = CommandRoute.Method.PUT, appendIdPath = CommandRoute.AppendPath.ALWAYS)
data class SaveView(val config: ObjectNode)

Overwrites a view's config; carries the expected version.

Link copied to clipboard
@Order(value = 4)
@Summary(value = "Make a view shared")
@CommandRoute(action = "share", method = CommandRoute.Method.PUT, appendIdPath = CommandRoute.AppendPath.ALWAYS)
object ShareView

Makes a personal view shared, in place: sent to the view's current personal path (…/owner/{ownerId}/view/{id}/share), it moves the view to the owner (shared). The id stays.

Link copied to clipboard
data class ViewAudienceChanged(val audience: ViewAudience, val toOwnerId: String) : OwnerTransferred
Link copied to clipboard
data class ViewCreated(val definitionId: String, val title: String, val audience: ViewAudience, val appId: String, val config: ObjectNode)
Link copied to clipboard
data class ViewRenamed(val title: String)
Link copied to clipboard
data class ViewSaved(val config: ObjectNode)