Looks like when I upgraded to Java 7 it ran fine.
On Sun, Mar 11, 2012 at 9:07 PM, Jeremy Lewi <[email protected]> wrote: > GenericData.deepCopy gives me an instance of GenericData.Record. How do I > convert this to an instance of my specific data (e.g GraphNodeData). > > It looks like the issue with the @override statement for the build might > have something to do with the fact that the specification for @Override > changed in jdk1.6 (see this post) > > http://stackoverflow.com/questions/2335655/why-is-javac-failing-on-override-annotation. > However, I'm using java version 1.6.0_27 so I'm not sure why its not > working for me. > > To clarify, the statement > GraphNodeData copy = GraphNodeData.newBuilder(this.data).build() > Compiles fine, but generates a runtime warning > The method build() of type GraphNodeData.Builder must override a > superclass method > > J > > > On Sun, Mar 11, 2012 at 7:37 PM, Jeremy Lewi <[email protected]> wrote: > >> Thanks. >> >> J >> >> >> On Sun, Mar 11, 2012 at 6:20 PM, James Baldassari >> <[email protected]>wrote: >> >>> GenericData is a singleton. You can use the static method >>> GenericData#get() to obtain the singleton instance: >>> >>> >>> http://avro.apache.org/docs/current/api/java/org/apache/avro/generic/GenericData.html#get() >>> >>> -James >>> >>> >>> On Sun, Mar 11, 2012 at 5:22 PM, Jeremy Lewi <[email protected]> wrote: >>> >>>> Yes. How do I instantiate an instance of GenericData though? It looks >>>> like its constructors are protected. >>>> >>>> Thanks >>>> J >>>> >>>> >>>> On Sun, Mar 11, 2012 at 1:52 PM, <[email protected]> wrote: >>>> >>>>> There is deepcopy method on genericdata I think >>>>> >>>>> I used it to create deep copies of the avro data >>>>> >>>>> Sent from my iPhone >>>>> >>>>> On Mar 11, 2012, at 3:40 PM, Jeremy Lewi <[email protected]> wrote: >>>>> >>>>> > Hi, >>>>> > >>>>> > In java, I'd like to make a deep copy of an avro record. >>>>> > >>>>> > Looking at the code that the avro compiler generates it looks like >>>>> the way to do this for records of type GraphNodeData >>>>> > would be >>>>> > GraphNodeData copy = >>>>> GraphNodeData.newBuilder(existing_value).build(); >>>>> > >>>>> > where GraphNodeData is the name of my avro record. >>>>> > >>>>> > Unfortunately, this generates a compile time error because >>>>> > the method GraphNodeData.build is decorated with "@Override" but it >>>>> apparently does not override any method. >>>>> > Deleting "@Override" makes the code work. Unfortunately, I would >>>>> have to do this every time I regenerated my avro classes from the schema. >>>>> > >>>>> > Am I doing something wrong or should I file a bug? >>>>> > >>>>> > Thanks >>>>> > J >>>>> >>>> >>>> >>> >> >
