[ https://issues.apache.org/jira/browse/THRIFT-894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12908306#action_12908306 ]
Mathias Herberts commented on THRIFT-894: ----------------------------------------- Ok for the ArrayIndexOutOfBoundsException. My concern by exposing the bufferForXXX is that if the buffer's position is modified, the getXXX() won't behave the same as before the position change (it will return a new array instead of the buffer's backing array). I guess simply mentioning this risk is enough. > Make default accessors for binary fields return byte[]; provide new accessors > to get ByteBuffer version > ------------------------------------------------------------------------------------------------------- > > Key: THRIFT-894 > URL: https://issues.apache.org/jira/browse/THRIFT-894 > Project: Thrift > Issue Type: Improvement > Reporter: Bryan Duxbury > Assignee: Bryan Duxbury > Fix For: 0.5 > > Attachments: thrift-894-v2.patch, thrift-894.patch > > > Folks have pointed out that it's not always best for users to interact with > the ByteBuffers that are now backing binary fields in our structs. In truth, > it seems like ByteBuffers are probably an expert means of access, with > associated benefits and complexities. > I think we should generate two different sets of accessors for binary fields: > a default set, named like usual, that return and take byte[], and a second > set, named something like "get_buffer_for_<field>" that returns the > underlying ByteBuffer. The byte[] accessors can wrap around the ByteBuffer > ones as necessary. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.