[ https://issues.apache.org/jira/browse/ARROW-1361?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16144721#comment-16144721 ]
Bryan Cutler commented on ARROW-1361: ------------------------------------- Thanks for clarifying [~jnadeau], I am fine with that as an API, but I think that changing the definition of {{Field}} like that would impact a lot of existing code right? What do you think about adding a method {{getType()}} in each vector to return the specific type instance? For example, {{NullableTimeStampMicroTZVector.getType()}} would return {{ArrowType.Timestamp}}. It would still do a cast internally, but still pretty simple. > [Java] Add minor type param accessors to NullableValueVectors > ------------------------------------------------------------- > > Key: ARROW-1361 > URL: https://issues.apache.org/jira/browse/ARROW-1361 > Project: Apache Arrow > Issue Type: Improvement > Components: Java - Vectors > Reporter: Bryan Cutler > Assignee: Bryan Cutler > > A {{NullableValueVector}} creates private copies of each param in the minor > type, but does not have any way public api to access them. So if given a > {{NullableValueVector}} you would have to use the {{Field}} and cast to the > correct type. For example, with a {{NullableTimeStampMicroTZVector}} and > trying to get the timezone: > {noformat} > if field.getType.isInstanceOf[ArrowType.Timestamp] && > field.getType.asInstanceOf[ArrowType.Timestamp].getTimezone > {noformat} > It would be more convenient to have direct accessors for these type params. > Also, it is possible to do some minor refactoring because > {{NullableValueVectors}} does not use these type params, so there is no need > to store them. They already exist in the inner vector object and the Field > type. -- This message was sent by Atlassian JIRA (v6.4.14#64029)