Breadcrumbs

jsonToClass() Operation


Syntax


set anObject = aString.jsonToClass()
set anObject = jsonToClass(literal)


Semantics

The operation jsonToClass() takes an JSON string (aString) and tries to map it to anObject. If this is not possible, an error is raised.

By default, the following mapping rules apply:

  • JSON attributes are mapped to class attributes having the same name.

  • Attributes not defined in the target class are ignored.

For more mapping details refer to JSON Type Mapping.

Substitutables

aString

A JSON document as String.

anObject

Target object, can be any object.

literal

String literal.

Examples


set myAddress = addressAsJSONDocument.jsonToClass();

The action script below creates an object of type Address. An output object flow state named myAddress of type Address needs to be defined in the activity diagram.

create myAddress;
set myAddress = addressAsJSONDocument.jsonToClass();

Below, a sample JSON string is shown to illustrate the mapping executed by the jsonlToClass() operation. The JSON string is mapped to an instance of Address as shown in the activity diagram.

{"name":"John Snow", "street":"99, Malamute Street"}


jsonAddress.png

myAddressClass.png

JSONtoXMLExample.png

Find below a second example, showing how to specify the Bridge type at runtime, e.g. if using a derived class.

{
  "e2e:type":"urn:json.e2e.ch.AddressWithMail",
  "name":"John Snow",
  "street":"99, Malamute Street",
  "mailaddress":"john.snow@winter.com"
} 

myAddressWithMail.png

The Bridge type is declared by the attribute "e2e:type". The type has to be specified like <xml_namespace>.<classname>



icon_download_example.png

<your example path>\Add-ons\JSON\uml\userManager.xml



For more information on JSON refer to the JSON Homepage or to RFC 4627.

Related Pages:


Related Documentation: