This trait represents a Bridge between TheCrudType and the Crudify trait.
What's a field pointer for the underlying CRUDify
What's the record type for the underlying CRUDify?
o != arg0
is the same as !(o == (arg0))
.
o != arg0
is the same as !(o == (arg0))
.
the object to compare against this object for dis-equality.
false
if the receiver object is equivalent to the argument; true
otherwise.
o == arg0
is the same as if (o eq null) arg0 eq null else o.equals(arg0)
.
o == arg0
is the same as if (o eq null) arg0 eq null else o.equals(arg0)
.
the object to compare against this object for equality.
true
if the receiver object is equivalent to the argument; false
otherwise.
o == arg0
is the same as o.equals(arg0)
.
o == arg0
is the same as o.equals(arg0)
.
the object to compare against this object for equality.
true
if the receiver object is equivalent to the argument; false
otherwise.
The core template for creating.
The core template for creating. Does not include any page wrapping
The core template for deleting.
The core template for deleting. Does not include any page wrapping
The core template for editting.
The core template for editting. Does not include any page wrapping
The core template for showing record.
The core template for showing record. Does not include any page wrapping
The core template for viewing.
The core template for viewing. Does not include any page wrapping
If there are any Loc.
If there are any Loc.LocParams that need to be added to every menu (e.g., a guard for access control of the Crudify screens)
This method is used to cast the receiver object to be of type T0
.
This method is used to cast the receiver object to be of type T0
.
Note that the success of a cast at runtime is modulo Scala's erasure semantics. Therefore the expression1.asInstanceOf[String]
will throw a ClassCastException
at runtime, while the expressionList(1).asInstanceOf[List[String]]
will not. In the latter example, because the type argument is erased as
part of compilation it is not possible to check whether the contents of the list are of the requested typed.
the receiver object.
This method will instantiate a bridge from TheCrudType so that the appropriate logical operations can be performed on TheCrudType
Based on a FieldPointer, build a FieldPointerBridge
What's the prefix for this CRUD.
This method creates and returns a copy of the receiver object.
This method creates and returns a copy of the receiver object.
The default implementation of the clone
method is platform dependent.
a copy of the receiver object.
Given a field pointer and an instance, get the field on that instance
Vend a new instance of TheCrudType
The menu item for creating items (make this "Empty" to disable)
The menu item for creating items (make this "Empty" to disable)
Override to include new Params for the create menu
Override to include new Params for the create menu
This is the template that's used to render the page after the optional wrapping of the template in the page wrapper
This is the template that's used to render the page after the optional wrapping of the template in the page wrapper
Override this method to change how the next link is generated
Override this method to change how the next link is generated
Override this method to change how the previous link is generated
Override this method to change how the previous link is generated
Override this method to change how the delete screen is built
Override this method to change how the delete screen is built
The menu item for deleting an item (make this "Empty" to disable)
The menu item for deleting an item (make this "Empty" to disable)
Override to include new Params for the delete menu
Override to include new Params for the delete menu
This is the template that's used to render the page after the optional wrapping of the template in the page wrapper
This is the template that's used to render the page after the optional wrapping of the template in the page wrapper
Customize the display of records for view menu loc
Customize the display of records for view menu loc
Override this method if you want to change the behavior of displaying records via the crud.
Override this method if you want to change the behavior of displaying records via the crud.all snippet
Override this method to customize how header items are treated
Override this method to customize how header items are treated
Override this method to customize how a crudAll line is generated
Override this method to customize how a crudAll line is generated
Override this method to determine how all the rows on a crud page are displayed
Override this method to determine how all the rows on a crud page are displayed
Override this method to change how fields are displayed for delete
Override this method to change how fields are displayed for delete
Override this method to change the behavior of deleting an item
Override this method to change the behavior of deleting an item
Customize the display of a row for displayRecord
The menu item for editing an item (make this "Empty" to disable)
The menu item for editing an item (make this "Empty" to disable)
Override to include new Params for the edit menu
Override to include new Params for the edit menu
The String displayed for menu editing
The String displayed for menu editing
This is the template that's used to render the page after the optional wrapping of the template in the page wrapper
This is the template that's used to render the page after the optional wrapping of the template in the page wrapper
This method is used to test whether the argument (arg0
) is a reference to the
receiver object (this
).
This method is used to test whether the argument (arg0
) is a reference to the
receiver object (this
).
The eq
method implements an [http://en.wikipedia.org/wiki/Equivalence_relation equivalence relation] on
non-null instances of AnyRef
:
* It is reflexive: for any non-null instance x
of type AnyRef
, x.eq(x)
returns true
.
* It is symmetric: for any non-null instances x
and y
of type AnyRef
, x.eq(y)
returns true
if and
only if y.eq(x)
returns true
.
* It is transitive: for any non-null instances x
, y
, and z
of type AnyRef
if x.eq(y)
returns true
and y.eq(z)
returns true
, then x.eq(z)
returns true
.
Additionally, the eq
method has three other properties.
* It is consistent: for any non-null instances x
and y
of type AnyRef
, multiple invocations of
x.eq(y)
consistently returns true
or consistently returns false
.
* For any non-null instance x
of type AnyRef
, x.eq(null)
and null.eq(x)
returns false
.
* null.eq(null)
returns true
.
When overriding the equals
or hashCode
methods, it is important to ensure that their behavior is
consistent with reference equality. Therefore, if two objects are references to each other (o1 eq o2
), they
should be equal to each other (o1 == o2
) and they should hash to the same value (o1.hashCode == o2.hashCode
).
the object to compare against this object for reference equality.
true
if the argument is a reference to the receiver object; false
otherwise.
This method is used to compare the receiver object (this
) with the argument object (arg0
) for equivalence.
This method is used to compare the receiver object (this
) with the argument object (arg0
) for equivalence.
The default implementations of this method is an [http://en.wikipedia.org/wiki/Equivalence_relation equivalence
relation]:
* It is reflexive: for any instance x
of type Any
, x.equals(x)
should return true
.
* It is symmetric: for any instances x
and y
of type Any
, x.equals(y)
should return true
if and
only if y.equals(x)
returns true
.
* It is transitive: for any instances x
, y
, and z
of type AnyRef
if x.equals(y)
returns true
and
y.equals(z)
returns true
, then x.equals(z)
should return true
.
If you override this method, you should verify that your implementation remains an equivalence relation.
Additionally, when overriding this method it is often necessary to override hashCode
to ensure that objects
that are "equal" (o1.equals(o2)
returns true
) hash to the same
scala.Int
(o1.hashCode.equals(o2.hashCode)
).
the object to compare against this object for equality.
true
if the receiver object is equivalent to the argument; false
otherwise.
The fields to be displayed.
The list of fields to present on a form form editting
The list of fields to present on a form form editting
The fields displayed on the list page.
The fields displayed on the list page. By default all the displayed fields, but this list can be shortened.
This method is called by the garbage collector on the receiver object when garbage collection determines that there are no more references to the object.
This method is called by the garbage collector on the receiver object when garbage collection determines that there are no more references to the object.
The details of when and if the finalize
method are invoked, as well as the interaction between finalize
and non-local returns and exceptions, are all platform dependent.
Get a List of items from the databased
What are the query parameters? Default to ascending on primary key
What are the query parameters? Default to ascending on primary key
Given a String that represents the primary key, find an instance of TheCrudType
Returns a representation that corresponds to the dynamic class of the receiver object.
Returns a representation that corresponds to the dynamic class of the receiver object.
The nature of the representation is platform dependent.
a representation that corresponds to the dynamic class of the receiver object.
Returns a hash code value for the object.
Returns a hash code value for the object.
The default hashing algorithm is platform dependent.
Note that it is allowed for two objects to have identical hash codes (o1.hashCode.equals(o2.hashCode)
) yet
not be equal (o1.equals(o2)
returns false
). A degenerate implementation could always return 0
.
However, it is required that if two objects are equal (o1.equals(o2)
returns true
) that they have
identical hash codes (o1.hashCode.equals(o2.hashCode)
). Therefore, when overriding this method, be sure
to verify that the behavior is consistent with the equals
method.
the hash code value for the object.
This method is used to test whether the dynamic type of the receiver object is T0
.
This method is used to test whether the dynamic type of the receiver object is T0
.
Note that the test result of the test is modulo Scala's erasure semantics. Therefore the expression1.isInstanceOf[String]
will return false
, while the expression List(1).isInstanceOf[List[String]]
will
return true
. In the latter example, because the type argument is erased as part of compilation it is not
possible to check whether the contents of the list are of the requested typed.
true
if the receiver object is an instance of erasure of type T0
; false
otherwise.
o.ne(arg0)
is the same as !(o.eq(arg0))
.
o.ne(arg0)
is the same as !(o.eq(arg0))
.
the object to compare against this object for reference dis-equality.
false
if the argument is not a reference to the receiver object; true
otherwise.
Wakes up a single thread that is waiting on the receiver object's monitor.
Wakes up a single thread that is waiting on the receiver object's monitor.
Wakes up all threads that are waiting on the receiver object's monitor.
Wakes up all threads that are waiting on the receiver object's monitor.
This method can be used to obscure the primary key.
This method can be used to obscure the primary key. This is more secure
because end users will not have access to the primary key. This method
actually does the obfuscation. You can use Mapper's KeyObfuscator class
to implement a nice implementation of this method for session-by-session
obfuscation.
By default, there's no obfuscation. Note that if you obfuscate the primary key, you need to update the findForParam method to accept the obfuscated keys (and translate them back.)
This method can be used to obscure the primary key.
This method can be used to obscure the primary key. This is more secure because end users will not have access to the primary key.
This method defines how many rows are displayed per page.
This method defines how many rows are displayed per page. By default, it's hard coded at 20, but you can make it session specific or change the default by overriding this method
The menu item for listing items (make this "Empty" to disable)
The menu item for listing items (make this "Empty" to disable)
Override to include new Params for the show all menu
Override to include new Params for the show all menu
This is the template that's used to render the page after the optional wrapping of the template in the page wrapper
This is the template that's used to render the page after the optional wrapping of the template in the page wrapper
Returns a string representation of the object.
Returns a string representation of the object.
The default representation is platform dependent.
a string representation of the object.
The menu item for viewing an item (make this "Empty" to disable)
The menu item for viewing an item (make this "Empty" to disable)
Override to include new Params for the view menu
Override to include new Params for the view menu
This is the template that's used to render the page after the optional wrapping of the template in the page wrapper
This is the template that's used to render the page after the optional wrapping of the template in the page wrapper
As the field names are being displayed for editting, this method is called with the XHTML that will be displayed as the field name an a flag indicating that the field is required (or not).
As the field names are being displayed for editting, this method is called with the XHTML that will be displayed as the field name an a flag indicating that the field is required (or not). You can wrap the fieldName in a span with a css class indicating that the field is required or otherwise do something to update the field name indiciating to the user that the field is required. By default the method wraps the fieldName in a span with the class attribute set to "required_field"
A specialization of CRUDify for LongKeyedMetaMappers.