I am in the process of implementing collections support in the JDBC Driver and have run in to a few issues. Specifically:
1. There does not seem to be a notion of a reflexive o.a.c.cql.jdbc.* class for the new collection classes in o.a.c.db.marshall. Is that intentional or was that to be "left to be implemented student", which for me is now. I am trying to make sure I understand to broader design so I do not go off half cocked. 2. In order to do a proper job on the client side of translating the intent of the collection declarations that are built on the server side, the server must send enough data back in the thrift (or native) stream to reconstitute it properly on the client side. Unless I am missing something (very possible) I think the underlying base types of the data need to be in the encoded (ByteBuffer) value in addition to the literal values (encoded as a JSON string payload). JSON does not have a rich enough vocabulary to imply all of the CQL types without this additional information. I think it is as simple as appending this information adjacent to the JSON literal and letting the compose/decompose methods deal with the exact content issues. I am happy to cut a JIRA and provide a patch to handle the issues but want to air out the issues before solving something that messes with the bigger picture of the overall design intent that I may be missing.