[ https://issues.apache.org/jira/browse/DIRMINA-507?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12558944#action_12558944 ]
trustin edited comment on DIRMINA-507 at 1/14/08 11:16 PM: --------------------------------------------------------------- Doesn't prepending slow down the overall performance degradation unless we have a CompositeIoBuffer? We could simply provide move() method to create some room for prepending. WDYT? was (Author: trustin): Doesn't prepending slow down the overall performance unless we create a CompositeIoBuffer? We could simply provide move() method to create some room for prepending. WDYT? > IoBuffer: Support prepending data > --------------------------------- > > Key: DIRMINA-507 > URL: https://issues.apache.org/jira/browse/DIRMINA-507 > Project: MINA > Issue Type: New Feature > Components: Core > Reporter: David M. Lloyd > Priority: Minor > > I'd like to see IoBuffer enhanced to support prepending data. It could work > as follows: > * A means to specificy or reserve space should be provided. An > IoBuffer.reserve() method could do the trick, and maybe a 3-parameter version > of IoBuffer. IoBuffer.reserve() would keep the position at zero, but > decrease the capacity and limit by the given number of bytes, and move the > buffer start up by the given number of bytes. > * A means to reclaim the space must be provided. An IoBuffer.reclaim() would > work by moving the buffer start back down by the given amount, maybe > returning a slice to the recovered area. Or another alternative would be to > have a series of prepend* methods which would prepend bytes/ints/etc. similar > to put*(), but rather than adding to the end of the buffer, they would add to > the beginning, moving the buffer start back down to the start of the > just-written data. Though I'm not sure how helpful it would be to add > another dozen methods to a class that already has probably over a hundred > methods. > * Care should be taken that the mechanism to prepend data does not allow a > user to "escape" a buffer slice. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.