Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-7580

Use of marsheller is not consistent in all places

    XMLWordPrintable

Details

    Description

      Usage of extended ProtoStreamMarshaller is not consistent across all the code paths. For the purposes of Teiid translator, I have extended ProtoStreamMarshaller which knows to read/write byte streams in portable fashion for given message type, which are representions of a relational table in Teiid. This works fine, if I just use cache's get/put calls.

      However, the same fails when used with RemoteQuery or Continuous query. The reason is, these classes circumvent extended Marsheller and go directly to serialization context registered to do the wrapping/unwrapping. Not only that there are few places code will type cast the SerializationContext to SerializationContextImpl object. Thus I can not even provide my own Serializer nor I can extend this as SerializationContextImpl is declared as final. These need to be corrected such that extended marsheller is used rather than hard coding them.

      I am guessing this is first time anyone has even done this without using dedicated java classes as marshellers.

      This is extremely critical for me to be fixed to move forward, I can provide the pull request for it?

      Attachments

        Issue Links

          Activity

            People

              anistor Adrian Nistor
              rhn-engineering-rareddy Ramesh Reddy
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: