RIDDL Specification For improving.app
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

OpenStoreHandler: Handler

ItemValue
BrieflyBrief description missing.
Definition PathImprovingApp.StoreContext.Store.CreatedStore.OpenStoreHandler
View Source LinkStore.riddl(171:15)

OnMessageClause command CreateStore

Statements

\nerror "Store already created"\n

OnMessageClause command EditStoreInfo

Statements

\n"copy fields from info to Draft info fields""adjust meta fields to reflect the change""yield the StoreUpdated event"\n

OnMessageClause command MakeStoreReady

Statements

\nerror "Store must be in Draft state before being made Ready"\n

OnMessageClause command DeleteStore

Statements

\nerror "Store must be closed before deleting it"\n

OnMessageClause command OpenStore

Statements

\nerror "Store is already opened"\n

OnMessageClause command CloseStore

Statements

\n"ensure all orders associated with store are Delivered or Cancelled before closing store"set field CreatedStore.meta to "StoreContext.MetaInfo"send event StoreClosed to outlet StoreEventsSource.Eventsbecome entity StoreContext.Store to handler StoreContext.Store.CreatedStore.ClosedStoreHandler\n

OnMessageClause command AddProductsToStore

Statements

```\n
### _OnMessageClause command RemoveProductsFromStore_

#### Statements
```\n"remove provided products from store""adjust meta fields to reflect the change""yield the ProductsRemovedFromStore event"//TODO: Add case where product to be removed doesn't exist in store
```\n
### _OnMessageClause command TerminateStore_

#### Statements
```\nset field CreatedStore.meta to "StoreContext.MetaInfo"morph entity StoreContext.Store to state TerminatedStore with record TerminatedStoreData//(lastMeta = @CreatedStoreState.meta)
```\n
## *Used By*
* [OnMessageClause 'On command OpenStore'](/improvingapp/storecontext/store/createdstore/readystorehandler#on-command-openstore) in [Handler 'ReadyStoreHandler'](/improvingapp/storecontext/store/createdstore/readystorehandler)
* [OnMessageClause 'On command OpenStore'](/improvingapp/storecontext/store/createdstore/closedstorehandler#on-command-openstore) in [Handler 'ClosedStoreHandler'](/improvingapp/storecontext/store/createdstore/closedstorehandler)

## *Uses Nothing*