(Quick Reference) ## scope ### Purpose Changes the scope of a service ### Examples
    class BookService {
        static scope = "session"
        ...
    }
### Description By default services are "singleton" scoped which means that clients of a service only ever use a single instance (a singleton) of the service. This behaviour can be changed by specifying a `scope` attribute with on the following values: `prototype` - A new service is created every time it is injected into another class `request` - A new service will be created per request `flash` - A new service will be created for the current and next request only `flow` - In web flows the service will exist for the scope of the flow `conversation` - In web flows the service will exist for the scope of the conversation. ie a root flow and its sub flows `session` - A service is created for the scope of a user session `singleton` (default) - Only one instance of the service ever exists See Scoped Services in the user guide for more information. | Quick Reference (hide)