I have created subclasses for SQLChar and rest of the character data types. These subclasses will use the Collator passed to them in the constructor for collation.
For the next incremental step, I am looking at adding collation type and collation derivation in the DataTypeDescriptor(DTD). This involves figuring out answers to following 2 questions
1)Where in the compile phase would these collation related fields get set for a given DTD?
2)Where would the code go to generate code for subclasses(like CollatorSQLChar) rather than base character data type classes (like SQLChar). Generating correct code will ensure that correct collation methods get used for character data types.
I am going to start researching into the first item in a crude manner ie by searching for DTD in the existing Derby code.
If anyone has any pointers/ideas for tackling these 2 tasks, I will highly appreciate it.