Public:BWmeta service/Java mapping
From YaddaWiki
| Service details | |
|---|---|
| Name | BWmeta | 
| Code location (relative to SVN root)  | projects/dir/bwmeta-core | 
| Javadoc | |
| Contact person | Jakub Jurkiewicz | 
General contracts
Unless explicitly stated in the documentation, every "Y" class has the following properties:
- has a public empty constructor.
 - every property is protected, but has a public getter and setter.
 -  getters of 
String,YLanguageandListproperties can never returnnull. Instead, an emptyString,YLanguage.Undeterminedor an emptyListis returned, respectively. -  for every 
List<T>property:-  its getter returns a modifiable 
List<T>; - its getter returns the same reference all the time;
 -  its setter accepts any 
Collection<T>(and copies the contents); -  there's an adder (which returns 
this). 
 -  its getter returns a modifiable 
 -  every setter and every list adder returns 
this, which allows chained setting, e.g.: 
new YElement()
    .setId("bwmeta1.element.foo")
    .addName(new YName().setText("Foo").setLanguage(YLanguage.English))
    .addDescription(new YDescription().setText("Lorem ipsum").setLanguage(YLanguage.Latin));
The folowing contracts are to be implemented/verified in the future:
-  
hashCode()andequals()methods are based on the values of all the properties, i.e., two "Y" objects are equal iff they are of the same type and all their properties are equal. 
