I load local file field dictionary, latest and greatest. Dictionary file looks like this in the header:
... ! Copyright Thomson Reuters 2017 ! !tag Filename RWF.DAT !tag Desc RDF-D RWF field set !tag Type 1 !tag Version 4.20.30 !tag Build 006 !tag Date 19-Oct-2017 !tag DictionaryId 1 ! ...
(note the 'DictionaryId' tag)
With this I would expect FieldDictionary#getDictId() to return 1 after a successful load. But it doesn't!!
Here's a minimal example:
public class DictIdCheck { public static void main(String[] args) { FieldDictionary fDict = FieldDictionary.create(); System.out.println("Dictionary Id, before load (getDictId()) : " + fDict.getDictId()); FieldDictionary.readRDMFieldDictionary(fDict, args[0]); FieldDictionary.readEnumTypeDef(fDict, args[1]); System.out.println("Dictionary Id, after load (getDictId()) : " + fDict.getDictId()); System.out.println("Dictionary Id (property 'DictionaryId') : " + fDict.getFieldProperty("DictionaryId")); } }
which returns:
Dictionary Id, before load (getDictId()) : 0 Dictionary Id, after load (getDictId()) : 0 Dictionary Id (property 'DictionaryId') : 1
I'm using RFA Java 8.1.0.L1 (latest and greatest)
Is this behavior intentional or is it a bug ?