implicit final class MasonLocalOps extends AnyRef
- Alphabetic
- By Inheritance
- MasonLocalOps
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
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 def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def masonLocal(implicit locale: Locale): String
Create a JSON object as a string formatted as a Mason Draft 2 error
Create a JSON object as a string formatted as a Mason Draft 2 error
The format of a Mason Draft 2 error containing all optional and mandatory properties is:
"@error": { "@id": "...", "@message": "...", "@code": "...", "@messages": [...] "@details": "...", "@httpStatusCode": "...", "@controls": "...", "@time": "...", }
The only mandatory property is
message
. Extra properties may be added to extend the information contained in the error. These extra properties are output with their context label and JSON value.- locale
to use for text based error messages (Message)
- returns
string version of Mason Draft 2 error message
- 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()
- 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(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def withControls[A](controls: A)(implicit arg0: JsonLocal[A], arg1: ShowLocal[A]): Error
Allows resource information to be associated with an error
Allows resource information to be associated with an error
The resource information to provide is typically a hypertext link to an on-line resource describing the error in detail. The value should result in a JSON object to conform with the Mason Draft 2 standard.
- A
type of the resource information
- controls
to associate with error
- returns
error with resource information included
- final def withDetails[A](details: A)(implicit arg0: JsonLocal[A], arg1: ShowLocal[A]): Error
Allows a detailed message to be associated with an error
Allows a detailed message to be associated with an error
The detailed message provides more information about the error than just a single one line of text. It may contain the text of the stack trace or detailed text about the cause and possible resolution of the error. The value should result in a JSON string to conform with the Mason Draft 2 standard.
- A
type of the detailed message
- details
to associate with error
- returns
error with detailed message included
- final def withHttpStatusCode[A](status: A)(implicit arg0: JsonLocal[A], arg1: ShowLocal[A]): Error
Allows an HTTP status code to be associated with an error
Allows an HTTP status code to be associated with an error
The HTTP status code is an integer representing the result of the latest response. The value should result in a JSON integer to conform with the Mason Draft 2 standard.
- A
type of the HTTP status code, typically scala.Int
- status
to associate with error
- returns
error with HTTP status code included
- final def withId[A](id: A)(implicit arg0: JsonLocal[A], arg1: ShowLocal[A]): Error
Allows a unique identifier to associated with an error
Allows a unique identifier to associated with an error
The unique identifier value can be any object, but is typically a string. If a custom type is used then implicit implementations of com.axiell.util.ShowLocal and JsonLocal will be required in scope.
- A
type of the unique identifier
- id
unique identifier to associate with error
- returns
error with unique identifier included
- final def withMessages[A](messages: A)(implicit arg0: JsonLocal[A], arg1: ShowLocal[A]): Error
Allows an array of messages to be associated with an error
Allows an array of messages to be associated with an error
The array of messages is typically provided as a List of some type. An entry in the array of messages is created for each element in the List. Each element should generate a single string value, not a JSON object so that the output conforms to the Mason Draft 2 standard.
- A
type of the unique identifier
- messages
to associate with error
- returns
error with messages included
- final def withTime[A](time: A)(implicit arg0: JsonLocal[A], arg1: ShowLocal[A]): Error
Allows a timestamp to be associated with an error
Allows a timestamp to be associated with an error
The timestamp is typically a
java.time.OffsetDateTime
object containing the time the error occurred. If a custom type is used then implicit implementations of ShowLocal and JsonLocal will be required in scope. The value should result in a JSON string to conform with the Mason Draft 2 standard.- A
type of the timestamp object
- time
to associate with error
- returns
error with timestamp included
Documentation for the Axiell Utilities Project
Overview
The Axiell Utilities Project attempts to provide a small library of classes and object applicable to most Axiell developments. The library is not geared towards any one project and so should be useful for new projects as well as existing ones.
The library is based on a few simple principles, namely:
Package structure
The
package consists of a number of utilities, where each utility provides a single piece of functionality.com.axiell.util
Notable utilities are:
Configure
generic configuration reader allowing application settings defined as resources to be interrogated.Error
generic error handling class defining a locale independent error message along with details relating to the context of the error. The context may include an exception and other relevant values.Formatter
retrieves and formats a locale specific string from a specified resource bundle. The formatting is specified in aC
printf style.Implicits
implements implicit methods and classes used to pimp methods onto existing classes (e.g.fold()
method toBoolean
class) and to provide implicit implementations for the JsonLocal and ShowLocal type classes.JsonLocal
type class used to output locale specific JSON structures. Implementations exist for Message and Error.Message
provides a locale independent mechanism for handling strings. The strings for a given locale are stored in resource bundles that are accessed when the message is to be displayed.ShowLocal
type class used to show locale specific strings. Allows Message and Error to be converted to a given language string.Dependencies
The list of dependencies are:
Typesafe Config
a generic configuration file reader. The library is used by theConfigure
class to access settings stored as resources within an application.