net.liftweb.record

MetaRecord

trait MetaRecord[BaseRecord <: Record[BaseRecord]] extends AnyRef

Holds meta information and operations on a record

Self Type
MetaRecord[BaseRecord] with BaseRecord
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. MetaRecord
  2. AnyRef
  3. Any
Visibility
  1. Public
  2. All

Type Members

  1. case class FieldHolder(name: String, method: Method, metaField: net.liftweb.record.Field[_, BaseRecord]) extends Product with Serializable

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def appendDispatch(func: PartialFunction[Req, (BaseRecord) ⇒ Box[LiftResponse]]): RulesSeq[PartialFunction[Req, () ⇒ Box[LiftResponse]]]

    Append a DispatchPF function to LiftRules.

    Append a DispatchPF function to LiftRules.dispatch. If the partial function is defined for a give Req it will construct a new Record based on the HTTP query string parameters and will pass this Record to the function returned by func parameter.

    func

    - a PartialFunction for associating a request with a user-provided function and the proper Record

  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. def asJSON(inst: BaseRecord): JsObj

    Returns the JSON representation of inst record

    Returns the JSON representation of inst record

    returns

    JsObj

  9. def asJValue(rec: BaseRecord): JObject

    Encode a record instance into a JValue

  10. def asJsExp(inst: BaseRecord): JsExp

    Returns the JSON representation of inst record, converts asJValue to JsObj

    Returns the JSON representation of inst record, converts asJValue to JsObj

    returns

    a JsObj

  11. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  12. def copy(rec: BaseRecord): BaseRecord

  13. def createRecord: BaseRecord

    Creates a new record

  14. def createWithMutableField[FieldType](original: BaseRecord, field: Field[FieldType, BaseRecord], newValue: Box[FieldType]): BaseRecord

    Creates a new record, setting the value of the fields from the original object but applying the new value for the specific field

  15. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  16. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  17. def fieldByName(fieldName: String, inst: BaseRecord): Box[net.liftweb.record.Field[_, BaseRecord]]

    Get a field by the field name

    Get a field by the field name

    fieldName

    -- the name of the field to get

    returns

    Box[The Field] (Empty if the field is not found)

  18. def fieldOrder: List[net.liftweb.record.Field[_, BaseRecord]]

    Defines the order of the fields in this record

    Defines the order of the fields in this record

    returns

    a List of Field

  19. def fields(rec: BaseRecord): List[net.liftweb.record.Field[_, BaseRecord]]

    Obtain the fields for a particular Record or subclass instance by passing the instance itself.

    Obtain the fields for a particular Record or subclass instance by passing the instance itself. (added 14th August 2009, Tim Perrett)

  20. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  21. def foreachCallback(inst: BaseRecord, f: (LifecycleCallbacks) ⇒ Any): Unit

  22. var formTemplate: Box[NodeSeq]

    Set this to use your own form template when rendering a Record to a form.

    Set this to use your own form template when rendering a Record to a form.

    This template is any given XHtml that contains three nodes acting as placeholders such as:

    
    <lift:field_label name="firstName"/> - the label for firstName field will be rendered here
    <lift:field name="firstName"/> - the firstName field will be rendered here (typically an input field)
    <lift:field_msg name="firstName"/> - the  will be rendered here having the id given by
                                                uniqueFieldId of the firstName field.
    
    
    Example.
    
    Having:
    
    class MyRecord extends Record[MyRecord] {
    
    	def meta = MyRecordMeta
    
    	object firstName extends StringField(this, "John")
    
    }
    
    object MyRecordMeta extends MyRecord with MetaRecord[MyRecord] {
     override def mutable_? = false
    }
    
    ...
    
    val rec = MyRecordMeta.createRecord.firstName("McLoud")
    
    val template =
    <div>
    	<div>
    		<div><lift:field_label name="firstName"/></div>
    		<div><lift:field name="firstName"/></div>
    		<div><lift:field_msg name="firstName"/></div>
    	</div>
    </div>
    
    MyRecordMeta.formTemplate = Full(template)
    rec.toForm((r:MyRecord) => println(r));
    
    

  23. def fromJSON(json: String): Box[BaseRecord]

    Create a record with fields populated with values from the JSON construct

    Create a record with fields populated with values from the JSON construct

    json

    - The stringified JSON object

    returns

    Box[BaseRecord]

  24. def fromJValue(jvalue: JValue): Box[BaseRecord]

    Create a record by decoding a JValue which must be a JObject

  25. def fromJsonString(json: String): Box[BaseRecord]

    Create a record with fields populated with values from the JSON construct

    Create a record with fields populated with values from the JSON construct

    json

    - The stringified JSON object

    returns

    Box[BaseRecord]

  26. def fromReq(r: Req): BaseRecord

    Create a record with fields populated with values from the request

    Create a record with fields populated with values from the request

    returns

    the created record

  27. final def getClass(): java.lang.Class[_]

    Definition Classes
    AnyRef → Any
  28. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  29. def instantiateRecord: BaseRecord

    Make a new record instance.

    Make a new record instance. This method can be overridden to provide caching behavior or what have you.

    Attributes
    protected
  30. def introspect(rec: BaseRecord, methods: Array[Method])(f: (Method, net.liftweb.record.Field[_, BaseRecord]) ⇒ Any): Unit

  31. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  32. def metaFields(): List[net.liftweb.record.Field[_, BaseRecord]]

    Renamed from fields() due to a clash with fields() in Record.

    Renamed from fields() due to a clash with fields() in Record. Use this method to obtain a list of fields defined in the meta companion objects. Possibly a breaking change? (added 14th August 2009, Tim Perrett)

    See also

    Record

  33. def mutable_?: Boolean

    Specifies if this Record is mutable or not

  34. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  35. final def notify(): Unit

    Definition Classes
    AnyRef
  36. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  37. def prependDispatch(func: PartialFunction[Req, (BaseRecord) ⇒ Box[LiftResponse]]): RulesSeq[PartialFunction[Req, () ⇒ Box[LiftResponse]]]

    Prepend a DispatchPF function to LiftRules.

    Prepend a DispatchPF function to LiftRules.dispatch. If the partial function is defined for a give Req it will construct a new Record based on the HTTP query string parameters and will pass this Record to the function returned by func parameter.

    func

    - a PartialFunction for associating a request with a user-provided function and the proper Record

  38. val rootClass: java.lang.Class[_ >: ?0]

    Attributes
    protected
  39. def setFieldsFromJSON(inst: BaseRecord, json: String): Box[Unit]

    Populate the fields of the record instance with values from the JSON construct

    Populate the fields of the record instance with values from the JSON construct

    inst

    - The record to populate

    json

    - The stringified JSON object

    returns

    - Full(()) on success, other on failure

  40. def setFieldsFromJValue(rec: BaseRecord, jvalue: JValue): Box[Unit]

    Attempt to decode a JValue, which must be a JObject, into a record instance

  41. def setFieldsFromJsonString(inst: BaseRecord, json: String): Box[Unit]

    Set from a Json String using the lift-json parser

  42. def setFieldsFromRecord(inst: BaseRecord, rec: BaseRecord): Unit

    Populate the fields of the record with values from an existing record

    Populate the fields of the record with values from an existing record

    inst

    - The record to populate

    rec

    - The Record to read from

  43. def setFieldsFromReq(inst: BaseRecord, req: Req): Unit

    Populate the fields of the record with values from the request

    Populate the fields of the record with values from the request

    inst

    - The record to populate

    req

    - The Req to read from

  44. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  45. def toForm(inst: BaseRecord, template: NodeSeq): NodeSeq

    Returns the XHTML representation of inst Record.

    Returns the XHTML representation of inst Record. You must provide the Node template to represent this record in the proprietary layout.

    inst

    - the record to be rendered

    template

    - The markup template forthe form. See also the formTemplate variable

    returns

    the XHTML content as a NodeSeq

  46. def toForm(inst: BaseRecord): NodeSeq

    Returns the XHTML representation of inst Record.

    Returns the XHTML representation of inst Record. If formTemplate is set, this template will be used otherwise a default template is considered.

    inst

    - the record to be rendered

    returns

    the XHTML content as a NodeSeq

  47. def toString(): String

    Definition Classes
    AnyRef → Any
  48. def toXHtml(inst: BaseRecord): NodeSeq

    Returns the HTML representation of inst Record.

    Returns the HTML representation of inst Record.

    inst

    - th designated Record

    returns

    a NodeSeq

  49. def validate(inst: BaseRecord): List[FieldError]

    Validates the inst Record by calling validators for each field

    Validates the inst Record by calling validators for each field

    inst

    - the Record to be validated

    returns

    a List of FieldError. If this list is empty you can assume that record was validated successfully

  50. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  51. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  52. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from AnyRef

Inherited from Any