question

Upvotes
Accepted
154 18 24 35

The impact of the MiFID II on RFA Java 7.6

We are using RFA7.6 and we cannot upgrade from 7.6 to 8 currently. Our application uses the toDate() method only for OMMDateTime and millisecond is enough for our usage. Will our application get any exception when it receives a microsecond or nanosecond timestamp?

treprfarfa-apijavamifid
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

This is a seed question from a real case.

1 Answer

· Write an Answer
Upvotes
Accepted
9.6k 10 7 7

Hello @Catherine Wong

Even the application using RFA 7.6 calls the toDate() method only for OMMDateTime, the application still gets the error “Invalid size 7 for Time”(the application receives microsecond timestamp) or “Invalid size 8 for Time”( the application receives nanosecond timestamp) when the application gets data according to its/TIME type (OMMFieldEntry.getData(OMMTypes.TIME) or OMMFieldEntry.getData(OMMFieldEntry.getOMMType()) is called) before it calls toDate(). Anyway, this problem does not occur if the application uses RFA 8.x or higher supporting microsecond and nanosecond timestamp.

To avoid the errors occurring on RFA 7.6 when it receives microsecond or nanosecond timestamp, the application can check if a field is OMMTypes.TIME and the length is more than 5 that means this is microsecond or nanosecond timestamp, do not decode the field. The snipped example application source code is shown below:

//fiddef is an instance of com.reuters.rfa.dictionary.FidDef
//fe is an instance of com.reuters.rfa.omm.OMMFieldEntry
//data is an instance of OMMData
//if a field is TIME
if(fiddef.getOMMType()==OMMTypes.TIME) {
    if(fe.getData().getBytes().length>5) { //the field is microsecond or nanosecond timestamp which RFA 7.6 does not support
       System.out.println("This is microsecond or nanosecond timestamp, do not decode it.");
      break;//stop decoding this field and start decoding the next field
    } else { //the field is the millisecond or lower timestamp which RFA7.6 supports
      //decode & process the field
      …
    }
} else { //not Time types
       //decode and process not Time types
       …
}
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.