[
https://issues.jboss.org/browse/ISPN-857?page=com.atlassian.jira.plugin.s...
]
Galder Zamarreño commented on ISPN-857:
---------------------------------------
I had left getTypeClassNames() in Externalizer but that's not needed any more since
Externalizer impls can lookup the class instance associated with a class name. So, 1 less
method in Externalizer impl :)
I'm adding a new commit and will update the pull.
Favour Externalizer method implementations over @Marshalls annotation
values
----------------------------------------------------------------------------
Key: ISPN-857
URL:
https://issues.jboss.org/browse/ISPN-857
Project: Infinispan
Issue Type: Bug
Components: Marshalling
Affects Versions: 5.0.0.ALPHA1
Reporter: Galder Zamarreño
Assignee: Galder Zamarreño
Fix For: 5.0.0.ALPHA2
Enhance Externalizer interface with methods for getTypeClasses(), getTypeClassNames() and
getId() in favour of annotations.
The reason for doing this is twofold:
- The use of annotations makes it difficult for other apps to abstract the externalizer
framework.
- Runtime errors not caught at compilation time could arise from code like this where X
and Y have no relationship:
@Marshalls(typeClasses = Y.class, id = ExternalizerIds.XExternalizer)
public class XExternalizer implements
Externalizer<X> {
In particular, code like this would maintain guarantees between classes externalized and
return of readObject():
List<Class<? extends T>> getTypeClasses();
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira