# configuration build-server [//]: # (Attention! this is a generated markdown from casual-configuration-documentation - do not edit this file!) Defines user configuration when building a casual server. ### services Defines which services the server has (and advertises on startup). The actual `xatmi` conformant function that is bound to the service can have a different name. Each service can have different `transaction` semantics: type | description -------------|---------------------------------------------------------------------- automatic | join transaction if present else start a new transaction (default type) join | join transaction if present else execute outside transaction atomic | start a new transaction regardless none | execute outside transaction regardless ### resources Defines which `xa` resources to link and use runtime. If a name is provided for a given resource, then startup configuration phase will ask for resource configuration for that given name. This is the preferred way, since it is a lot more explicit. ## examples Below follows examples in `yaml` and `json` _(casual can also handle `ini` and `xml`)_ ### yaml ```` yaml --- server: default: service: transaction: "join" category: "some.category" resources: - key: "rm-mockup" name: "resource-1" note: "the runtime configuration for this resource is correlated with the name 'resource-1' - no group is needed for resource configuration" services: - name: "s1" - name: "s2" transaction: "auto" - name: "s3" function: "f3" visibility: "undiscoverable" - name: "s4" function: "f4" category: "some.other.category" ... ```` ### json ```` json { "server": { "default": { "service": { "transaction": "join", "category": "some.category" } }, "resources": [ { "key": "rm-mockup", "name": "resource-1", "note": "the runtime configuration for this resource is correlated with the name 'resource-1' - no group is needed for resource configuration" } ], "services": [ { "name": "s1" }, { "name": "s2", "transaction": "auto" }, { "name": "s3", "function": "f3", "visibility": "undiscoverable" }, { "name": "s4", "function": "f4", "category": "some.other.category" } ] } } ````