abstract class NestedCourierCollectionResource[ParentResource <: Resource[_], K, M <: ScalaRecordTemplate] extends CollectionResource[ParentResource, K, M]
If the resource is a courier model, extending from NestedCourierCollectionResource removes some boilerplate.
Aside from automating some of the boilerplate away, it functions the same as a standard CollectionResource. If the resource is a top level resource, check out the CourierCollectionResource abstract class.
To configure customized fields, use the following snippet:
override implicit lazy val Fields = super.FIelds.withRelated(...)
- ParentResource
The parent resource (for nesting purposes). If it is a top level, check out: CourierCollectionResource
- K
The key type of the resource.
- M
The "value" type of the resource.
- Alphabetic
- By Inheritance
- NestedCourierCollectionResource
- CollectionResource
- Resource
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
NestedCourierCollectionResource()(implicit kf: KeyFormat[K], classTag: ClassTag[M], application: Application)
- kf
The KeyFormat for the key type in the resource.
- classTag
The concrete class tag for the value type in the resource.
Type Members
-
type
AncestorKeys = ParentResource.PathKey
The (Hlist-like) collection of ancestor keys has this type.
The (Hlist-like) collection of ancestor keys has this type.
- Definition Classes
- CollectionResource
-
type
KeyType = K
- Definition Classes
- CollectionResource
-
abstract
type
OptPathKey <: :::[Option[KeyType], ParentResource.PathKey]
- Definition Classes
- CollectionResource
-
abstract
type
PathKey <: :::[KeyType, ParentResource.PathKey]
The (HList-like) collection of all keys that identifies a single element of this collection.
The (HList-like) collection of all keys that identifies a single element of this collection.
- Definition Classes
- CollectionResource → Resource
-
abstract
type
PathParser <: PathKeyParser[PathKey]
- Definition Classes
- Resource
Abstract Value Members
-
abstract
val
parentResource: ParentResource
A references to the parent resource (used to construct the path key parser).
A references to the parent resource (used to construct the path key parser).
Must be implemented in the resources that this trait is mixed into, typically with a val param.
class MyNestedResource @Inject() ( val parentResource: MyParentResource) extends CollectionResource[KeyType, ElemType] with NestedCollection[MyParentResource, KeyType] { // ... }
- Attributes
- protected[this]
- Definition Classes
- CollectionResource
-
abstract
def
resourceName: String
- Definition Classes
- Resource
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
lazy val
BaseFields: ResourceFields[M]
- Attributes
- protected[this]
-
implicit
def
Fields: ResourceFields[M]
- Definition Classes
- NestedCourierCollectionResource → Resource
-
def
Nap[RACType, ResponseType]: RestActionBuilder[RACType, Unit, AnyContent, K, M, ResponseType]
Helper to easily construct Naptime actions.
Helper to easily construct Naptime actions.
Typically, all actions in a naptime resource will all use the same auth parser and policy, or will want to use the same error handling function for all requests. These resources should do something similar to the following:
class MyResource extends TopLevelCollectionResource[MyKeyType, MyValueType] { def Rest[RACType, ResponseType] = Nap[RACType, ResponseType].auth(myAuthPolicy).catching(errorFn) ... }
- Definition Classes
- CollectionResource
-
def
OkIfPresent(key: K, maybeElement: Option[M]): RestResponse[Keyed[K, M]]
- Definition Classes
- CollectionResource
-
def
OkIfPresent[T](a: Option[T]): RestResponse[T]
- Definition Classes
- CollectionResource
-
implicit
val
application: Application
- Definition Classes
- NestedCourierCollectionResource → CollectionResource
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
implicit
val
executionContext: ExecutionContext
- Attributes
- protected
- Definition Classes
- CollectionResource
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
implicit final
val
keyFormat: KeyFormat[K]
- Definition Classes
- NestedCourierCollectionResource → CollectionResource
-
implicit
val
materializer: Materializer
- Attributes
- protected
- Definition Classes
- CollectionResource
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
implicit
val
paginationConfiguration: PaginationConfiguration
Provide a default pagination configuration for the resource that users can override and configure as needed.
Provide a default pagination configuration for the resource that users can override and configure as needed.
- Definition Classes
- CollectionResource
-
implicit final
lazy val
resourceFormat: OFormat[M]
- Definition Classes
- NestedCourierCollectionResource → Resource
-
def
resourceVersion: Int
- Definition Classes
- Resource
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )