trait AppBase[User] extends RowAuthorization with Loggable with QuereaseProvider with DbAccessProvider with I18n
- Self Type
- AppBase[User] with DbAccess with Authorization[User] with ValidationEngine with DbConstraintMessage with Audit[User]
- Source
- AppBase.scala
- Alphabetic
- By Inheritance
- AppBase
- I18n
- DbAccessProvider
- QuereaseProvider
- Loggable
- RowAuthorization
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- trait AppListResult[+T] extends Iterator[T] with AutoCloseable
- case class CreateContext[+T <: (AppBase.this)#Dto](viewName: String, inParams: Map[String, Any] = Map(), user: User, state: ApplicationState = Map[String, Any](), result: T = null) extends (AppBase.this)#RequestContext[T] with Product with Serializable
- type Dto = QuereaseProvider.QE.DTO
- type DtoWithId = QuereaseProvider.QE.DWI
- sealed abstract class Ext[-A] extends AnyRef
- case class FilterLabel(fieldName: String, filterName: String) extends Product with Serializable
- case class FilterParameter(name: String, table: String, label: (AppBase.this)#FilterLabel, nullable: Boolean, required: Boolean, type_: Type, enum: Seq[String], refViewName: String, filterType: FilterType) extends Product with Serializable
- implicit class FunctionMagnet[T] extends (AppBase.this)#Magnet
- sealed abstract class HExt[T] extends (AppBase.this)#Ext[T]
- case class ListContext[+T <: (AppBase.this)#Dto](viewName: String, inParams: Map[String, Any] = Map(), offset: Int = 0, limit: Int = 0, orderBy: String = null, user: User, state: ApplicationState = Map[String, Any](), completePromise: Promise[Unit], executor: ExecutionContextExecutor, doCount: Boolean = false, timeoutSeconds: QueryTimeout, poolName: PoolName, result: (AppBase.this)#AppListResult[T] = null, count: Long = -1) extends (AppBase.this)#RequestContext[(AppBase.this)#AppListResult[T]] with Product with Serializable
- sealed abstract class Magnet extends AnyRef
-
abstract
type
QE <: AppQuerease
- Definition Classes
- QuereaseProvider
- case class RemoveContext[+T <: (AppBase.this)#DtoWithId](viewName: String, id: Long, inParams: Map[String, Any] = Map(), user: User, completePromise: Promise[Unit], state: ApplicationState = Map[String, Any](), result: Long = -1, old: T = null) extends (AppBase.this)#RequestContext[Long] with Product with Serializable
- sealed trait RequestContext[+T] extends AnyRef
- case class SaveContext[+T <: (AppBase.this)#Dto](viewName: String, old: T, obj: T, inParams: Map[String, Any] = Map(), user: User, completePromise: Promise[Long], state: ApplicationState = Map[String, Any](), extraPropsToSave: Map[String, Any] = Map(), result: Long = -1) extends (AppBase.this)#RequestContext[Long] with Product with Serializable
- case class ViewContext[+T <: (AppBase.this)#Dto](viewName: String, id: Long, inParams: Map[String, Any] = Map(), user: User, state: ApplicationState = Map[String, Any](), result: Option[T] = null) extends (AppBase.this)#RequestContext[Option[T]] with Product with Serializable
- type ViewDef = mojoz.metadata.ViewDef[QuereaseProvider.QE.FieldDef]
- implicit class VoidFunctionMagnet[T] extends (AppBase.this)#FunctionMagnet[T]
Abstract Value Members
-
abstract
def
initQuerease: (AppBase.this)#QE
Override this method in subclass to initialize
Override this method in subclass to initialize
qe
- Attributes
- protected
- Definition Classes
- QuereaseProvider
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
-
val
I18nResourceName: String
Application default resource bundle.
Application default resource bundle. Subclass can override this value
- Definition Classes
- I18n
-
val
I18nWabaseResourceName: String
- Definition Classes
- I18n
- def after(actions: (AppBase.this)#Magnet*): Unit
- def api(implicit user: User): JsObject
- def apiMetadata(implicit user: User, state: ApplicationState): JsObject
- implicit def appStateToMap(state: ApplicationState): Map[String, Any]
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- def auth[C <: (AppBase.this)#RequestContext[_]](ctx: C, clazz: Class[_])(action: ⇒ C): C
-
val
autoTimeFieldNames: Set[String]
Names of date or time fields updated automatically on save
- def badEmailAddressErrorMessage(viewName: String, field: QuereaseProvider.QE.FieldDef, value: Any)(implicit locale: Locale): String
- def before(actions: (AppBase.this)#Magnet*): Unit
-
def
bundle(name: String)(implicit locale: Locale): ResourceBundle
- Definition Classes
- I18n
- def checkApi[F](viewName: String, method: String, user: User)(f: ⇒ F): F
- def checkFieldValues(instance: (AppBase.this)#Dto)(implicit state: ApplicationState): Unit
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- def count(viewName: String, params: Map[String, Any])(implicit user: User, state: ApplicationState, timeoutSeconds: QueryTimeout, poolName: PoolName = PoolName(viewDef(viewName).cp), executor: ExecutionContextExecutor): Long
- def create(viewName: String, params: Map[String, Any] = Map.empty)(implicit user: User, state: ApplicationState, timeoutSeconds: QueryTimeout, poolName: PoolName = PoolName(viewDef(viewName).cp)): (AppBase.this)#Dto
- def createCountResult[T <: (AppBase.this)#Dto](ctx: (AppBase.this)#ListContext[T]): Long
- def createCreateCtx[T <: (AppBase.this)#Dto](ctx: (AppBase.this)#CreateContext[T]): (AppBase.this)#CreateContext[T]
- def createCreateResult[T <: (AppBase.this)#Dto](ctx: (AppBase.this)#CreateContext[T]): T
- def createDeleteCtx[T <: (AppBase.this)#DtoWithId](ctx: (AppBase.this)#RemoveContext[T]): (AppBase.this)#RemoveContext[T]
- def createDeleteResult[T <: (AppBase.this)#DtoWithId](ctx: (AppBase.this)#RemoveContext[T]): Long
- def createListCtx[T <: (AppBase.this)#Dto](ctx: (AppBase.this)#ListContext[T]): (AppBase.this)#ListContext[T]
- def createListResult[T <: (AppBase.this)#Dto](ctx: (AppBase.this)#ListContext[T]): (AppBase.this)#AppListResult[T]
- def createRaw(viewName: String, params: Map[String, Any] = Map.empty)(implicit user: User, state: ApplicationState, timeoutSeconds: QueryTimeout, poolName: PoolName): (AppBase.this)#CreateContext[(AppBase.this)#Dto]
- def createSaveCtx[T <: (AppBase.this)#Dto](ctx: (AppBase.this)#SaveContext[T]): (AppBase.this)#SaveContext[T]
- def createSaveResult[T <: (AppBase.this)#Dto](ctx: (AppBase.this)#SaveContext[T]): Long
- def createViewCtx[T <: (AppBase.this)#Dto](ctx: (AppBase.this)#ViewContext[T]): (AppBase.this)#ViewContext[T]
- def createViewResult[T <: (AppBase.this)#Dto](ctx: (AppBase.this)#ViewContext[T]): Option[T]
- def currentUserParamNames: Set[String]
-
def
current_user_param(user: User): Map[String, Any]
Query parameter overrides related to current user, for example, user_id, person_id etc.
Query parameter overrides related to current user, for example, user_id, person_id etc. Override with something useful, like:
Option(user).map(u => Map("current_user_id" -> u.id)) getOrElse Map.empty
-
def
dbAccess: AppBase[User] with DbAccess with Authorization[User] with ValidationEngine with DbConstraintMessage with Audit[User]
- Definition Classes
- AppBase → DbAccessProvider
- def defaultCreate(ctx: (AppBase.this)#CreateContext[(AppBase.this)#Dto]): (AppBase.this)#CreateContext[(AppBase.this)#Dto]
- def defaultList(ctx: (AppBase.this)#ListContext[(AppBase.this)#Dto]): (AppBase.this)#ListContext[(AppBase.this)#Dto]
- def defaultRemove(ctx: (AppBase.this)#RemoveContext[(AppBase.this)#DtoWithId]): (AppBase.this)#RemoveContext[(AppBase.this)#DtoWithId]
- def defaultSave(ctx: (AppBase.this)#SaveContext[(AppBase.this)#Dto]): (AppBase.this)#SaveContext[(AppBase.this)#Dto]
- def defaultView(ctx: (AppBase.this)#ViewContext[(AppBase.this)#Dto]): (AppBase.this)#ViewContext[(AppBase.this)#Dto]
- def delete(viewName: String, id: Long, params: Map[String, Any] = Map())(implicit user: User, state: ApplicationState, timeoutSeconds: QueryTimeout, poolName: PoolName = PoolName(viewDef(viewName).cp)): Long
-
def
deleteFilter(viewName: String): String
- Definition Classes
- RowAuthorization
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def extraMetadata(filter: (AppBase.this)#FilterParameter)(implicit user: User): Map[String, JsValue]
- def extraMetadata(viewDef: (AppBase.this)#ViewDef)(implicit user: User): Map[String, JsValue]
- def extraMetadata(fieldDef: QuereaseProvider.QE.FieldDef)(implicit user: User): Map[String, JsValue]
- def fieldRequiredErrorMessage(viewName: String, field: QuereaseProvider.QE.FieldDef)(implicit locale: Locale): String
- def fieldValueNotInEnumErrorMessage(viewName: String, field: QuereaseProvider.QE.FieldDef, value: Any)(implicit locale: Locale): String
- def fieldValueTooLongErrorMessage(viewName: String, field: QuereaseProvider.QE.FieldDef, value: Any)(implicit locale: Locale): String
- def filterByHasRole(someRoles: Set[String], user: User): Set[String]
- def filterFieldLabel(name: String, colLabel: String, filterType: FilterType): (AppBase.this)#FilterLabel
- def filterMetadata(view: (AppBase.this)#ViewDef)(implicit user: User, state: ApplicationState): Map[String, JsValue]
- def filterParameters(view: (AppBase.this)#ViewDef): Seq[(AppBase.this)#FilterParameter]
- def filterToParameterNames(filter: FilterType): Seq[String]
- def filterToParameterNamesAndCols(filter: FilterType): Seq[(String, String)]
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- def get(viewName: String, id: Long, params: Map[String, Any] = Map())(implicit user: User, state: ApplicationState, timeoutSeconds: QueryTimeout, poolName: PoolName = PoolName(viewDef(viewName).cp)): Option[(AppBase.this)#Dto]
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getRaw(viewName: String, id: Long, params: Map[String, Any] = Map())(implicit user: User, state: ApplicationState, timeoutSeconds: QueryTimeout, poolName: PoolName): (AppBase.this)#ViewContext[(AppBase.this)#Dto]
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
i18nResourceDependencies: Map[String, String]
Application resource bundle dependencies.
Application resource bundle dependencies.
- Definition Classes
- I18n
-
def
i18nResources(implicit locale: Locale): Iterator[(String, Any)]
Calls
Calls
i18nResourcesFromBundle(ResourceName)
- Definition Classes
- I18n
-
def
i18nResourcesFromBundle(name: String)(implicit locale: Locale): Iterator[(String, Any)]
Returns resources as
Returns resources as
Iterator[(String, Any)]
. Iterator element is
(String, Any)
instead of
(String, String)
so that
TupleJsonFormat
can be used for response marshalling
TupleJsonFormat }}}
(String, String) }}}
(String, Any) }}} of
(String, String)
so that
TupleJsonFormat
can be used for response marshalling
TupleJsonFormat }}}
(String, String) }}}
Iterator[(String, Any)] }}} of
(String, String)
so that
TupleJsonFormat
can be used for response marshalling
TupleJsonFormat }}}
(String, String) }}}
- Definition Classes
- I18n
- def impliedIdForGetOverList[F](viewName: String): Option[Long]
-
def
insertFilter(viewName: String): String
- Definition Classes
- RowAuthorization
- def isEmailAddressField(viewName: String, field: QuereaseProvider.QE.FieldDef): Boolean
- def isEmailAddressTemplateViolated(viewName: String, field: QuereaseProvider.QE.FieldDef, value: Any): Boolean
- def isFieldRequiredViolated(viewName: String, field: QuereaseProvider.QE.FieldDef, value: Any): Boolean
- def isFieldValueEnumViolated(viewName: String, field: QuereaseProvider.QE.FieldDef, value: Any): Boolean
- def isFieldValueMaxLengthViolated(viewName: String, field: QuereaseProvider.QE.FieldDef, value: Any): Boolean
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def list(viewName: String, params: Map[String, Any], offset: Int = 0, limit: Int = 0, orderBy: String = null, doCount: Boolean = false)(implicit user: User, state: ApplicationState, timeoutSeconds: QueryTimeout, poolName: PoolName = PoolName(viewDef(viewName).cp), executor: ExecutionContextExecutor): (AppBase.this)#AppListResult[(AppBase.this)#Dto]
-
def
listFilter(viewName: String): String
- Definition Classes
- RowAuthorization
- def listRaw(viewName: String, params: Map[String, Any], offset: Int = 0, limit: Int = 0, orderBy: String = null, doCount: Boolean = false)(implicit user: User, state: ApplicationState, timeoutSeconds: QueryTimeout, poolName: PoolName, executor: ExecutionContextExecutor): (AppBase.this)#ListContext[(AppBase.this)#Dto]
-
lazy val
logger: Logger
- Attributes
- protected
- Definition Classes
- Loggable
- implicit def mapToAppState(state: Map[String, Any]): ApplicationState
- def metadata(viewDef: (AppBase.this)#ViewDef)(implicit user: User, state: ApplicationState): JsObject
- def metadata(viewName: String)(implicit user: User, state: ApplicationState): JsObject
- lazy val metadataVersionString: String
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def noApiException(viewName: String, method: String, user: User): Exception
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def on(actions: (AppBase.this)#Magnet*): Unit
-
implicit final
val
qe: (AppBase.this)#QE
- Definition Classes
- QuereaseProvider
- def rest[C <: (AppBase.this)#RequestContext[_]](ctx: C)(implicit mgr: (AppBase.this)#Ext[C], clazz: Class[_]): C
- implicit def rowLikeToDto[B <: (AppBase.this)#Dto](r: RowLike, m: Manifest[B]): B
- def save(viewName: String, obj: JsObject, params: Map[String, Any] = Map(), emptyStringsToNull: Boolean = true)(implicit user: User, state: ApplicationState, timeoutSeconds: QueryTimeout, poolName: PoolName = PoolName(viewDef(viewName).cp)): Long
- def saveApp(instance: (AppBase.this)#Dto, params: Map[String, Any] = Map(), emptyStringsToNull: Boolean = true, extraPropsToSave: Map[String, Any] = Map())(implicit user: User, state: ApplicationState, timeoutSeconds: QueryTimeout, poolName: PoolName = ...): Long
- def stableOrderBy(viewDef: (AppBase.this)#ViewDef, orderBy: String): String
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- implicit def toAppListResult[T <: (AppBase.this)#Dto](list: Seq[T])(implicit arg0: Manifest[T]): (AppBase.this)#AppListResult[T] { def resources: Nothing }
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
translate(str: String, params: String*)(implicit locale: Locale): String
- Definition Classes
- I18n
-
def
translateFromBundle(name: String, str: String, params: String*)(implicit locale: Locale): String
- Definition Classes
- I18n
-
def
updateFilter(viewName: String): String
- Definition Classes
- RowAuthorization
- def validateFields(instance: (AppBase.this)#Dto)(implicit state: ApplicationState): Unit
- def validationErrorMessage(viewName: String, field: QuereaseProvider.QE.FieldDef, value: Any)(implicit locale: Locale): Option[String]
-
def
viewFilter(viewName: String): String
- Definition Classes
- RowAuthorization
- lazy val viewNameToFilterMetadata: Map[String, Seq[(AppBase.this)#FilterParameter]]
-
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
- @throws( ... ) @native()
- implicit object BList extends (AppBase.this)#HExt[(AppBase.this)#ListContext[(AppBase.this)#Dto]]
- implicit object Create extends (AppBase.this)#HExt[(AppBase.this)#CreateContext[(AppBase.this)#Dto]]
- implicit object Remove extends (AppBase.this)#HExt[(AppBase.this)#RemoveContext[(AppBase.this)#DtoWithId]]
- implicit object Save extends (AppBase.this)#HExt[(AppBase.this)#SaveContext[(AppBase.this)#Dto]]
- implicit object View extends (AppBase.this)#HExt[(AppBase.this)#ViewContext[(AppBase.this)#Dto]]