Description
The algorithm should be:
1. @DomainObject(objectType = ...)
2. @ObjectType(...)
3. @PersistenceCapable(schema=..., table=...)
4. use the default fully qualified class name.
This ticket is all about introducing (3). The inferred objecttype should be:
schemaname.TableName, where schemaname is lowercased.
If schema is not present, then should ignore.
~~~
In addition, to support any legacy serialized data that uses the fully qualified class name, the resolution of objects by object type should first lookup the object type by its specified name, else fallback to looking up as if FQN.
eg suppose have:
package com.mycompany.myapp @DomainObject(objectType="CUS") public class Customer { ... }
then the serialized form of this is "CUS:1", but Isis should also resolve this object if "com.mycompany.myapp.Customer:1" is provided instead.