Package-level declarations

Types

Link copied to clipboard
@Summary(value = "Create tree node")
@Description(value = "Id is the tenant ID.")
interface Create<E : Created> : NotBlankNameCapable

Creates a node under parentCode (me.ahoo.wow.models.tree.ROOT_CODE for the first level); the tree gives it its code and its place after its siblings. The aggregate is the tree (its id typically the tenant's), so the command also creates it: annotate the concrete command @AllowCreate too, as the compiler reads the command's own class.

Link copied to clipboard
interface Created : Flat

A node was created.

Link copied to clipboard
@Summary(value = "Delete tree node")
@Description(value = "Id is the tenant ID.")
interface Delete<E : Deleted> : TreeCoded

Deletes the node code, which has no children. 9.x took the code from the route's path (DELETE .../{code}); a 10.x route carries the aggregate's id only, so the code is in the command's body.

Link copied to clipboard
interface Deleted : TreeCoded

A node was deleted.

Link copied to clipboard
@Summary(value = "Move tree node order")
@Description(value = "Only sibling moves are allowed.")
interface Move<E : Moved>

Orders sibling nodes: codes, in their new order, take the sort ids 0, 1, 2…

Link copied to clipboard
interface Moved

Sibling nodes were ordered as codes.

Link copied to clipboard
@Summary(value = "Update tree node")
interface Update<E : Updated> : TreeCoded

Updates the node code (in the command's body: 10.x routes carry the aggregate's id only).

Link copied to clipboard
interface Updated : Flat

A node was updated.