You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gora.apache.org by le...@apache.org on 2014/01/09 16:17:02 UTC
svn commit: r1556830 - in /gora/branches/GORA_94:
gora-compiler/src/main/velocity/org/apache/gora/compiler/templates/
gora-core/src/examples/avro/
gora-core/src/examples/java/org/apache/gora/examples/
gora-core/src/examples/java/org/apache/gora/example...
Author: lewismc
Date: Thu Jan 9 15:17:01 2014
New Revision: 1556830
URL: http://svn.apache.org/r1556830
Log:
commit for GORA-94v10.patch
Modified:
gora/branches/GORA_94/gora-compiler/src/main/velocity/org/apache/gora/compiler/templates/record.vm
gora/branches/GORA_94/gora-core/src/examples/avro/employee.json
gora/branches/GORA_94/gora-core/src/examples/avro/immutable_fields.json
gora/branches/GORA_94/gora-core/src/examples/avro/tokendatum.json
gora/branches/GORA_94/gora-core/src/examples/avro/webpage.json
gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/WebPageDataCreator.java
gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/Employee.java
gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/ImmutableFields.java
gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/Metadata.java
gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/TokenDatum.java
gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/V2.java
gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/WebPage.java
gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/Persistent.java
gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/impl/BeanFactoryImpl.java
gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/impl/PersistentBase.java
gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mock/persistency/MockPersistent.java
gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/persistency/impl/TestPersistentBase.java
gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/store/DataStoreTestUtil.java
gora/branches/GORA_94/gora-tutorial/src/main/avro/metricdatum.json
gora/branches/GORA_94/gora-tutorial/src/main/avro/pageview.json
gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/generated/MetricDatum.java
gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/generated/Pageview.java
Modified: gora/branches/GORA_94/gora-compiler/src/main/velocity/org/apache/gora/compiler/templates/record.vm
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-compiler/src/main/velocity/org/apache/gora/compiler/templates/record.vm?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-compiler/src/main/velocity/org/apache/gora/compiler/templates/record.vm (original)
+++ gora/branches/GORA_94/gora-compiler/src/main/velocity/org/apache/gora/compiler/templates/record.vm Thu Jan 9 15:17:01 2014
@@ -16,7 +16,7 @@
## limitations under the License.
##
#if ($schema.getNamespace())
-package $schema.getNamespace();
+package $schema.getNamespace();
#end
@SuppressWarnings("all")
#if ($schema.getDoc())
@@ -35,7 +35,7 @@ public class ${this.mangle($schema.getNa
public ${this.mangle($schema.getName())}() {
super();
}
-
+
public ${this.mangle($schema.getName())}(Object value) {
super(value);
}
@@ -50,7 +50,7 @@ public class ${this.mangle($schema.getNa
#end
public org.apache.avro.Schema getSchema() { return SCHEMA$; }
- // Used by DatumWriter. Applications should not call.
+ // Used by DatumWriter. Applications should not call.
public java.lang.Object get(int field$) {
switch (field$) {
#set ($i = 0)
@@ -61,8 +61,8 @@ public class ${this.mangle($schema.getNa
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
-
- // Used by DatumReader. Applications should not call.
+
+ // Used by DatumReader. Applications should not call.
@SuppressWarnings(value="unchecked")
public void put(int field$, java.lang.Object value) {
switch (field$) {
@@ -94,7 +94,7 @@ public class ${this.mangle($schema.getNa
this.${this.mangle($field.name(), $schema.isError())} = ${this.generateAppropriateWrapperOrValue($field.schema())};
setDirty(${field.pos()});
}
-
+
/**
* Checks the dirty status of the '${this.mangle($field.name(), $schema.isError())}' field. A field is dirty if it represents a change that has not yet been written to the database.
#if ($field.doc()) * $field.doc()#end
@@ -110,17 +110,17 @@ public class ${this.mangle($schema.getNa
public static #if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder newBuilder() {
return new #if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder();
}
-
+
/** Creates a new ${this.mangle($schema.getName())} RecordBuilder by copying an existing Builder */
public static #if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder newBuilder(#if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder other) {
return new #if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder(other);
}
-
+
/** Creates a new ${this.mangle($schema.getName())} RecordBuilder by copying an existing $this.mangle($schema.getName()) instance */
public static #if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder newBuilder(#if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())} other) {
return new #if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder(other);
}
-
+
private static java.nio.ByteBuffer deepCopyToWriteOnlyBuffer(
java.nio.ByteBuffer input) {
java.nio.ByteBuffer copy = java.nio.ByteBuffer.allocate(input.capacity());
@@ -143,7 +143,7 @@ public class ${this.mangle($schema.getNa
copy.limit(limit);
return copy.asReadOnlyBuffer();
}
-
+
/**
* RecordBuilder for ${this.mangle($schema.getName())} instances.
*/
@@ -159,12 +159,12 @@ public class ${this.mangle($schema.getNa
private Builder() {
super(#if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.SCHEMA$);
}
-
+
/** Creates a Builder by copying an existing Builder */
private Builder(#if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder other) {
super(other);
}
-
+
/** Creates a Builder by copying an existing $this.mangle($schema.getName()) instance */
private Builder(#if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())} other) {
#if ($schema.isError())super(other)#else
@@ -183,7 +183,7 @@ public class ${this.mangle($schema.getNa
super.setValue(value);
return this;
}
-
+
@Override
public #if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder clearValue() {
super.clearValue();
@@ -195,7 +195,7 @@ public class ${this.mangle($schema.getNa
super.setCause(cause);
return this;
}
-
+
@Override
public #if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder clearCause() {
super.clearCause();
@@ -209,20 +209,20 @@ public class ${this.mangle($schema.getNa
public ${this.javaType($field.schema())} ${this.generateGetMethod($schema, $field)}() {
return ${this.mangle($field.name(), $schema.isError())};
}
-
+
/** Sets the value of the '${this.mangle($field.name(), $schema.isError())}' field */
public #if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder ${this.generateSetMethod($schema, $field)}(${this.javaUnbox($field.schema())} value) {
validate(fields()[$field.pos()], value);
this.${this.mangle($field.name(), $schema.isError())} = value;
fieldSetFlags()[$field.pos()] = true;
- return this;
+ return this;
}
-
+
/** Checks whether the '${this.mangle($field.name(), $schema.isError())}' field has been set */
public boolean ${this.generateHasMethod($schema, $field)}() {
return fieldSetFlags()[$field.pos()];
}
-
+
/** Clears the value of the '${this.mangle($field.name(), $schema.isError())}' field */
public #if ($schema.getNamespace())$schema.getNamespace().#end${this.mangle($schema.getName())}.Builder ${this.generateClearMethod($schema, $field)}() {
#if (${this.isUnboxedJavaTypeNullable($field.schema())})
@@ -231,7 +231,7 @@ public class ${this.mangle($schema.getNa
fieldSetFlags()[$field.pos()] = false;
return this;
}
-
+
#end
#end
@Override
@@ -247,17 +247,21 @@ public class ${this.mangle($schema.getNa
}
}
}
-
+
public ${this.mangle($schema.getName())}.Tombstone getTombstone(){
return TOMBSTONE;
}
+ public ${this.mangle($schema.getName())} newInstance(){
+ return newBuilder().build();
+ }
+
private static final Tombstone TOMBSTONE = new Tombstone();
-
+
public static final class Tombstone extends ${this.mangle($schema.getName())} implements org.apache.gora.persistency.Tombstone {
-
+
private Tombstone() { }
-
+
#foreach ($field in $schema.getFields())
#if ($this.isNotHiddenField($field.name()))
/**
@@ -267,7 +271,7 @@ public class ${this.mangle($schema.getNa
public ${this.javaType($field.schema())} ${this.generateGetMethod($schema, $field)}() {
throw new java.lang.UnsupportedOperationException("Get is not supported on tombstones");
}
-
+
/**
* Sets the value of the '${this.mangle($field.name(), $schema.isError())}' field.
#if ($field.doc()) * $field.doc()#end
@@ -276,7 +280,7 @@ public class ${this.mangle($schema.getNa
public void ${this.generateSetMethod($schema, $field)}(${this.javaType($field.schema())} value) {
throw new java.lang.UnsupportedOperationException("Set is not supported on tombstones");
}
-
+
/**
* Checks the dirty status of the '${this.mangle($field.name(), $schema.isError())}' field. A field is dirty if it represents a change that has not yet been written to the database.
#if ($field.doc()) * $field.doc()#end
@@ -285,10 +289,10 @@ public class ${this.mangle($schema.getNa
public boolean ${this.generateDirtyMethod($schema, $field)}(${this.javaType($field.schema())} value) {
throw new java.lang.UnsupportedOperationException("IsDirty is not supported on tombstones");
}
-
+
#end
#end
-
+
}
-
+
}
\ No newline at end of file
Modified: gora/branches/GORA_94/gora-core/src/examples/avro/employee.json
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/avro/employee.json?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/avro/employee.json (original)
+++ gora/branches/GORA_94/gora-core/src/examples/avro/employee.json Thu Jan 9 15:17:01 2014
@@ -16,15 +16,15 @@
"fields" : [
{"name": "url", "type": ["null","string"], "default":null},
{"name": "content", "type": ["null","bytes"],"default":null},
- {"name": "parsedContent", "type": {"type":"array", "items": "string"},"default":null},
- {"name": "outlinks", "type": {"type":"map", "values":"string"},"default":null},
+ {"name": "parsedContent", "type": {"type":"array", "items": "string"},"default":{}},
+ {"name": "outlinks", "type": {"type":"map", "values":"string"},"default":{}},
{"name": "metadata", "default":null, "type": {
"name": "Metadata",
"type": "record",
"namespace": "org.apache.gora.examples.generated",
"fields": [
{"name": "version", "type": "int","default":0},
- {"name": "data", "type": {"type": "map", "values": "string"},"default":null}
+ {"name": "data", "type": {"type": "map", "values": "string"},"default":{}}
]
}}
]
Modified: gora/branches/GORA_94/gora-core/src/examples/avro/immutable_fields.json
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/avro/immutable_fields.json?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/avro/immutable_fields.json (original)
+++ gora/branches/GORA_94/gora-core/src/examples/avro/immutable_fields.json Thu Jan 9 15:17:01 2014
@@ -4,15 +4,15 @@
"doc": "Record with only immutable or dirtyable fields, used for testing",
"namespace": "org.apache.gora.examples.generated",
"fields" : [
- {"name": "v1", "type": "int"},
+ {"name": "v1", "type": "int","default":0},
{"name": "v2", "type": [{
"name": "V2",
"type": "record",
"namespace": "org.apache.gora.examples.generated",
"fields": [
- {"name": "v3", "type": "int"}
+ {"name": "v3", "type": "int","default":0}
]
- },"null"]
+ },"null"], "default":null
}
]
}
Modified: gora/branches/GORA_94/gora-core/src/examples/avro/tokendatum.json
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/avro/tokendatum.json?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/avro/tokendatum.json (original)
+++ gora/branches/GORA_94/gora-core/src/examples/avro/tokendatum.json Thu Jan 9 15:17:01 2014
@@ -3,6 +3,6 @@
"name": "TokenDatum",
"namespace": "org.apache.gora.examples.generated",
"fields" : [
- {"name": "count", "type": "int"}
+ {"name": "count", "type": "int","default":0}
]
}
Modified: gora/branches/GORA_94/gora-core/src/examples/avro/webpage.json
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/avro/webpage.json?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/avro/webpage.json (original)
+++ gora/branches/GORA_94/gora-core/src/examples/avro/webpage.json Thu Jan 9 15:17:01 2014
@@ -6,7 +6,7 @@
{"name": "url", "type": ["null","string"], "default":null},
{"name": "content", "type": ["null","bytes"],"default":null},
{"name": "parsedContent", "type": {"type":"array", "items": "string"}, "default":null},
- {"name": "outlinks", "type": {"type":"map", "values":"string"}, "default":null},
+ {"name": "outlinks", "type": {"type":"map", "values":"string"}, "default":{}},
{"name": "metadata", "default":null, "type": {
"name": "Metadata",
"type": "record",
Modified: gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/WebPageDataCreator.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/WebPageDataCreator.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/WebPageDataCreator.java (original)
+++ gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/WebPageDataCreator.java Thu Jan 9 15:17:01 2014
@@ -120,7 +120,6 @@ public class WebPageDataCreator {
page = WebPage.newBuilder().build();
page.setUrl(new Utf8(URLS[i]));
page.setParsedContent(new ArrayList<CharSequence>());
- page.setOutlinks(new HashMap<CharSequence, CharSequence>());
if (CONTENTS[i]!=null){
page.setContent(ByteBuffer.wrap(CONTENTS[i].getBytes()));
for(String token : CONTENTS[i].split(" ")) {
@@ -133,10 +132,9 @@ public class WebPageDataCreator {
Metadata metadata = Metadata.newBuilder().build();
metadata.setVersion(1);
- metadata.setData(new HashMap<CharSequence, CharSequence>());
metadata.getData().put(new Utf8("metakey"), new Utf8("metavalue"));
page.setMetadata(metadata);
-
+
dataStore.put(URLS[i], page);
}
dataStore.flush();
Modified: gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/Employee.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/Employee.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/Employee.java (original)
+++ gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/Employee.java Thu Jan 9 15:17:01 2014
@@ -6,7 +6,7 @@
package org.apache.gora.examples.generated;
@SuppressWarnings("all")
public class Employee extends org.apache.gora.persistency.impl.PersistentBase implements org.apache.avro.specific.SpecificRecord, org.apache.gora.persistency.Persistent {
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"Employee\",\"namespace\":\"org.apache.gora.examples.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"name\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"dateOfBirth\",\"type\":\"long\",\"default\":0},{\"name\":\"ssn\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"salary\",\"type\":\"int\",\"default\":0},{\"name\":\"boss\",\"type\":[\"null\",\"Employee\",\"string\"],\"default\":null},{\"name\":\"webpage\",\"type\":[\"null\",{\"type\":\"record\",\"name\":\"WebPage\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"url\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"content\",\"type\":
[\"null\",\"bytes\"],\"default\":null},{\"name\":\"parsedContent\",\"type\":{\"type\":\"array\",\"items\":\"string\"},\"default\":null},{\"name\":\"outlinks\",\"type\":{\"type\":\"map\",\"values\":\"string\"},\"default\":null},{\"name\":\"metadata\",\"type\":{\"type\":\"record\",\"name\":\"Metadata\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"version\",\"type\":\"int\",\"default\":0},{\"name\":\"data\",\"type\":{\"type\":\"map\",\"values\":\"string\"},\"default\":null}]},\"default\":null}]}],\"default\":null}]}");
+ public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"Employee\",\"namespace\":\"org.apache.gora.examples.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"name\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"dateOfBirth\",\"type\":\"long\",\"default\":0},{\"name\":\"ssn\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"salary\",\"type\":\"int\",\"default\":0},{\"name\":\"boss\",\"type\":[\"null\",\"Employee\",\"string\"],\"default\":null},{\"name\":\"webpage\",\"type\":[\"null\",{\"type\":\"record\",\"name\":\"WebPage\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"url\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"content\",\"type\":
[\"null\",\"bytes\"],\"default\":null},{\"name\":\"parsedContent\",\"type\":{\"type\":\"array\",\"items\":\"string\"},\"default\":{}},{\"name\":\"outlinks\",\"type\":{\"type\":\"map\",\"values\":\"string\"},\"default\":{}},{\"name\":\"metadata\",\"type\":{\"type\":\"record\",\"name\":\"Metadata\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"version\",\"type\":\"int\",\"default\":0},{\"name\":\"data\",\"type\":{\"type\":\"map\",\"values\":\"string\"},\"default\":{}}]},\"default\":null}]}],\"default\":null}]}");
/** Bytes used to represent weather or not a field is dirty. */
private java.nio.ByteBuffer __g__dirty = java.nio.ByteBuffer.wrap(new byte[1]);
private java.lang.CharSequence name;
@@ -454,6 +454,10 @@ public class Employee extends org.apache
return TOMBSTONE;
}
+ public Employee newInstance(){
+ return newBuilder().build();
+ }
+
private static final Tombstone TOMBSTONE = new Tombstone();
public static final class Tombstone extends Employee implements org.apache.gora.persistency.Tombstone {
Modified: gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/ImmutableFields.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/ImmutableFields.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/ImmutableFields.java (original)
+++ gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/ImmutableFields.java Thu Jan 9 15:17:01 2014
@@ -7,7 +7,7 @@ package org.apache.gora.examples.generat
@SuppressWarnings("all")
/** Record with only immutable or dirtyable fields, used for testing */
public class ImmutableFields extends org.apache.gora.persistency.impl.PersistentBase implements org.apache.avro.specific.SpecificRecord, org.apache.gora.persistency.Persistent {
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"ImmutableFields\",\"namespace\":\"org.apache.gora.examples.generated\",\"doc\":\"Record with only immutable or dirtyable fields, used for testing\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"v1\",\"type\":\"int\"},{\"name\":\"v2\",\"type\":[{\"type\":\"record\",\"name\":\"V2\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"v3\",\"type\":\"int\"}]},\"null\"]}]}");
+ public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"ImmutableFields\",\"namespace\":\"org.apache.gora.examples.generated\",\"doc\":\"Record with only immutable or dirtyable fields, used for testing\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"v1\",\"type\":\"int\",\"default\":0},{\"name\":\"v2\",\"type\":[{\"type\":\"record\",\"name\":\"V2\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"v3\",\"type\":\"int\",\"default\":0}]},\"null\"],\"default\":null}]}");
/** Bytes used to represent weather or not a field is dirty. */
private java.nio.ByteBuffer __g__dirty = java.nio.ByteBuffer.wrap(new byte[1]);
private int v1;
@@ -22,13 +22,14 @@ public class ImmutableFields extends org
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
+
// Used by DatumReader. Applications should not call.
@SuppressWarnings(value="unchecked")
- public void put(int field$, java.lang.Object value$) {
+ public void put(int field$, java.lang.Object value) {
switch (field$) {
- case 0: __g__dirty = (java.nio.ByteBuffer)value$; break;
- case 1: v1 = (java.lang.Integer)value$; break;
- case 2: v2 = (org.apache.gora.examples.generated.V2)value$; break;
+ case 0: __g__dirty = (java.nio.ByteBuffer)(value); break;
+ case 1: v1 = (java.lang.Integer)(value); break;
+ case 2: v2 = (org.apache.gora.examples.generated.V2)(value); break;
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
@@ -209,7 +210,7 @@ public class ImmutableFields extends org
public ImmutableFields build() {
try {
ImmutableFields record = new ImmutableFields();
- record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) defaultValue(fields()[0]);
+ record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) java.nio.ByteBuffer.wrap(new byte[1]);
record.v1 = fieldSetFlags()[1] ? this.v1 : (java.lang.Integer) defaultValue(fields()[1]);
record.v2 = fieldSetFlags()[2] ? this.v2 : (org.apache.gora.examples.generated.V2) defaultValue(fields()[2]);
return record;
@@ -223,6 +224,10 @@ public class ImmutableFields extends org
return TOMBSTONE;
}
+ public ImmutableFields newInstance(){
+ return newBuilder().build();
+ }
+
private static final Tombstone TOMBSTONE = new Tombstone();
public static final class Tombstone extends ImmutableFields implements org.apache.gora.persistency.Tombstone {
Modified: gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/Metadata.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/Metadata.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/Metadata.java (original)
+++ gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/Metadata.java Thu Jan 9 15:17:01 2014
@@ -6,14 +6,7 @@
package org.apache.gora.examples.generated;
@SuppressWarnings("all")
public class Metadata extends org.apache.gora.persistency.impl.PersistentBase implements org.apache.avro.specific.SpecificRecord, org.apache.gora.persistency.Persistent {
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"Metadata\",\"namespace\":\"org.apache.gora.examples.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"version\",\"type\":\"int\",\"default\":0},{\"name\":\"data\",\"type\":{\"type\":\"map\",\"values\":\"string\"},\"default\":null}]}");
-
- public static final String[] _ALL_FIELDS = {
- "__g__dirty",
- "version",
- "data",
- };
-
+ public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"Metadata\",\"namespace\":\"org.apache.gora.examples.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"version\",\"type\":\"int\",\"default\":0},{\"name\":\"data\",\"type\":{\"type\":\"map\",\"values\":\"string\"},\"default\":{}}]}");
/** Bytes used to represent weather or not a field is dirty. */
private java.nio.ByteBuffer __g__dirty = java.nio.ByteBuffer.wrap(new byte[1]);
private int version;
@@ -28,13 +21,14 @@ public class Metadata extends org.apache
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
+
// Used by DatumReader. Applications should not call.
@SuppressWarnings(value="unchecked")
- public void put(int field$, java.lang.Object value$) {
+ public void put(int field$, java.lang.Object value) {
switch (field$) {
- case 0: __g__dirty = (java.nio.ByteBuffer)value$; break;
- case 1: version = (java.lang.Integer)value$; break;
- case 2: data = (java.util.Map<java.lang.CharSequence,java.lang.CharSequence>)value$; break;
+ case 0: __g__dirty = (java.nio.ByteBuffer)(value); break;
+ case 1: version = (java.lang.Integer)(value); break;
+ case 2: data = (java.util.Map<java.lang.CharSequence,java.lang.CharSequence>)((value instanceof org.apache.gora.persistency.Dirtyable) ? value : new org.apache.gora.persistency.impl.DirtyMapWrapper((java.util.Map)value)); break;
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
@@ -215,9 +209,9 @@ public class Metadata extends org.apache
public Metadata build() {
try {
Metadata record = new Metadata();
- record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) defaultValue(fields()[0]);
+ record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) java.nio.ByteBuffer.wrap(new byte[1]);
record.version = fieldSetFlags()[1] ? this.version : (java.lang.Integer) defaultValue(fields()[1]);
- record.data = fieldSetFlags()[2] ? this.data : (java.util.Map<java.lang.CharSequence,java.lang.CharSequence>) defaultValue(fields()[2]);
+ record.data = fieldSetFlags()[2] ? this.data : (java.util.Map<java.lang.CharSequence,java.lang.CharSequence>) new org.apache.gora.persistency.impl.DirtyMapWrapper((java.util.Map)defaultValue(fields()[2]));
return record;
} catch (Exception e) {
throw new org.apache.avro.AvroRuntimeException(e);
@@ -229,6 +223,10 @@ public class Metadata extends org.apache
return TOMBSTONE;
}
+ public Metadata newInstance(){
+ return newBuilder().build();
+ }
+
private static final Tombstone TOMBSTONE = new Tombstone();
public static final class Tombstone extends Metadata implements org.apache.gora.persistency.Tombstone {
Modified: gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/TokenDatum.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/TokenDatum.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/TokenDatum.java (original)
+++ gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/TokenDatum.java Thu Jan 9 15:17:01 2014
@@ -6,7 +6,7 @@
package org.apache.gora.examples.generated;
@SuppressWarnings("all")
public class TokenDatum extends org.apache.gora.persistency.impl.PersistentBase implements org.apache.avro.specific.SpecificRecord, org.apache.gora.persistency.Persistent {
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"TokenDatum\",\"namespace\":\"org.apache.gora.examples.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"count\",\"type\":\"int\"}]}");
+ public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"TokenDatum\",\"namespace\":\"org.apache.gora.examples.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"count\",\"type\":\"int\",\"default\":0}]}");
/** Bytes used to represent weather or not a field is dirty. */
private java.nio.ByteBuffer __g__dirty = java.nio.ByteBuffer.wrap(new byte[1]);
private int count;
@@ -19,12 +19,13 @@ public class TokenDatum extends org.apac
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
+
// Used by DatumReader. Applications should not call.
@SuppressWarnings(value="unchecked")
- public void put(int field$, java.lang.Object value$) {
+ public void put(int field$, java.lang.Object value) {
switch (field$) {
- case 0: __g__dirty = (java.nio.ByteBuffer)value$; break;
- case 1: count = (java.lang.Integer)value$; break;
+ case 0: __g__dirty = (java.nio.ByteBuffer)(value); break;
+ case 1: count = (java.lang.Integer)(value); break;
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
@@ -151,7 +152,7 @@ public class TokenDatum extends org.apac
public TokenDatum build() {
try {
TokenDatum record = new TokenDatum();
- record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) defaultValue(fields()[0]);
+ record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) java.nio.ByteBuffer.wrap(new byte[1]);
record.count = fieldSetFlags()[1] ? this.count : (java.lang.Integer) defaultValue(fields()[1]);
return record;
} catch (Exception e) {
@@ -164,6 +165,10 @@ public class TokenDatum extends org.apac
return TOMBSTONE;
}
+ public TokenDatum newInstance(){
+ return newBuilder().build();
+ }
+
private static final Tombstone TOMBSTONE = new Tombstone();
public static final class Tombstone extends TokenDatum implements org.apache.gora.persistency.Tombstone {
Modified: gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/V2.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/V2.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/V2.java (original)
+++ gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/V2.java Thu Jan 9 15:17:01 2014
@@ -6,7 +6,7 @@
package org.apache.gora.examples.generated;
@SuppressWarnings("all")
public class V2 extends org.apache.gora.persistency.impl.PersistentBase implements org.apache.avro.specific.SpecificRecord, org.apache.gora.persistency.Persistent {
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"V2\",\"namespace\":\"org.apache.gora.examples.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"v3\",\"type\":\"int\"}]}");
+ public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"V2\",\"namespace\":\"org.apache.gora.examples.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"v3\",\"type\":\"int\",\"default\":0}]}");
/** Bytes used to represent weather or not a field is dirty. */
private java.nio.ByteBuffer __g__dirty = java.nio.ByteBuffer.wrap(new byte[1]);
private int v3;
@@ -19,12 +19,13 @@ public class V2 extends org.apache.gora.
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
+
// Used by DatumReader. Applications should not call.
@SuppressWarnings(value="unchecked")
- public void put(int field$, java.lang.Object value$) {
+ public void put(int field$, java.lang.Object value) {
switch (field$) {
- case 0: __g__dirty = (java.nio.ByteBuffer)value$; break;
- case 1: v3 = (java.lang.Integer)value$; break;
+ case 0: __g__dirty = (java.nio.ByteBuffer)(value); break;
+ case 1: v3 = (java.lang.Integer)(value); break;
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
@@ -151,7 +152,7 @@ public class V2 extends org.apache.gora.
public V2 build() {
try {
V2 record = new V2();
- record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) defaultValue(fields()[0]);
+ record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) java.nio.ByteBuffer.wrap(new byte[1]);
record.v3 = fieldSetFlags()[1] ? this.v3 : (java.lang.Integer) defaultValue(fields()[1]);
return record;
} catch (Exception e) {
@@ -164,6 +165,10 @@ public class V2 extends org.apache.gora.
return TOMBSTONE;
}
+ public V2 newInstance(){
+ return newBuilder().build();
+ }
+
private static final Tombstone TOMBSTONE = new Tombstone();
public static final class Tombstone extends V2 implements org.apache.gora.persistency.Tombstone {
Modified: gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/WebPage.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/WebPage.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/WebPage.java (original)
+++ gora/branches/GORA_94/gora-core/src/examples/java/org/apache/gora/examples/generated/WebPage.java Thu Jan 9 15:17:01 2014
@@ -6,17 +6,7 @@
package org.apache.gora.examples.generated;
@SuppressWarnings("all")
public class WebPage extends org.apache.gora.persistency.impl.PersistentBase implements org.apache.avro.specific.SpecificRecord, org.apache.gora.persistency.Persistent {
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"WebPage\",\"namespace\":\"org.apache.gora.examples.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"url\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"content\",\"type\":[\"null\",\"bytes\"],\"default\":null},{\"name\":\"parsedContent\",\"type\":{\"type\":\"array\",\"items\":\"string\"},\"default\":null},{\"name\":\"outlinks\",\"type\":{\"type\":\"map\",\"values\":\"string\"},\"default\":null},{\"name\":\"metadata\",\"type\":{\"type\":\"record\",\"name\":\"Metadata\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"version\",\"type\":\"int\",\"default\":0},{\"name\":\"data\",\"type\":{\"type\":\"map\",\"values\"
:\"string\"},\"default\":null}]},\"default\":null}]}");
-
- public static final String[] _ALL_FIELDS = {
- "__g__dirty",
- "url",
- "content",
- "parsedContent",
- "outlinks",
- "metadata",
- };
-
+ public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"WebPage\",\"namespace\":\"org.apache.gora.examples.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"url\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"content\",\"type\":[\"null\",\"bytes\"],\"default\":null},{\"name\":\"parsedContent\",\"type\":{\"type\":\"array\",\"items\":\"string\"},\"default\":{}},{\"name\":\"outlinks\",\"type\":{\"type\":\"map\",\"values\":\"string\"},\"default\":{}},{\"name\":\"metadata\",\"type\":{\"type\":\"record\",\"name\":\"Metadata\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"version\",\"type\":\"int\",\"default\":0},{\"name\":\"data\",\"type\":{\"type\":\"map\",\"values\":\"s
tring\"},\"default\":{}}]},\"default\":null}]}");
/** Bytes used to represent weather or not a field is dirty. */
private java.nio.ByteBuffer __g__dirty = java.nio.ByteBuffer.wrap(new byte[1]);
private java.lang.CharSequence url;
@@ -37,16 +27,17 @@ public class WebPage extends org.apache.
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
+
// Used by DatumReader. Applications should not call.
@SuppressWarnings(value="unchecked")
- public void put(int field$, java.lang.Object value$) {
+ public void put(int field$, java.lang.Object value) {
switch (field$) {
- case 0: __g__dirty = (java.nio.ByteBuffer)value$; break;
- case 1: url = (java.lang.CharSequence)value$; break;
- case 2: content = (java.nio.ByteBuffer)value$; break;
- case 3: parsedContent = (java.util.List<java.lang.CharSequence>)value$; break;
- case 4: outlinks = (java.util.Map<java.lang.CharSequence,java.lang.CharSequence>)value$; break;
- case 5: metadata = (org.apache.gora.examples.generated.Metadata)value$; break;
+ case 0: __g__dirty = (java.nio.ByteBuffer)(value); break;
+ case 1: url = (java.lang.CharSequence)(value); break;
+ case 2: content = (java.nio.ByteBuffer)(value); break;
+ case 3: parsedContent = (java.util.List<java.lang.CharSequence>)((value instanceof org.apache.gora.persistency.Dirtyable) ? value : new org.apache.gora.persistency.impl.DirtyListWrapper((java.util.List)value)); break;
+ case 4: outlinks = (java.util.Map<java.lang.CharSequence,java.lang.CharSequence>)((value instanceof org.apache.gora.persistency.Dirtyable) ? value : new org.apache.gora.persistency.impl.DirtyMapWrapper((java.util.Map)value)); break;
+ case 5: metadata = (org.apache.gora.examples.generated.Metadata)(value); break;
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
@@ -390,12 +381,12 @@ public class WebPage extends org.apache.
public WebPage build() {
try {
WebPage record = new WebPage();
- record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) defaultValue(fields()[0]);
+ record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) java.nio.ByteBuffer.wrap(new byte[1]);
record.url = fieldSetFlags()[1] ? this.url : (java.lang.CharSequence) defaultValue(fields()[1]);
record.content = fieldSetFlags()[2] ? this.content : (java.nio.ByteBuffer) defaultValue(fields()[2]);
- record.parsedContent = fieldSetFlags()[3] ? this.parsedContent : (java.util.List<java.lang.CharSequence>) defaultValue(fields()[3]);
- record.outlinks = fieldSetFlags()[4] ? this.outlinks : (java.util.Map<java.lang.CharSequence,java.lang.CharSequence>) defaultValue(fields()[4]);
- record.metadata = fieldSetFlags()[5] ? this.metadata : (org.apache.gora.examples.generated.Metadata) defaultValue(fields()[5]);
+ record.parsedContent = fieldSetFlags()[3] ? this.parsedContent : (java.util.List<java.lang.CharSequence>) new org.apache.gora.persistency.impl.DirtyListWrapper((java.util.List)defaultValue(fields()[3]));
+ record.outlinks = fieldSetFlags()[4] ? this.outlinks : (java.util.Map<java.lang.CharSequence,java.lang.CharSequence>) new org.apache.gora.persistency.impl.DirtyMapWrapper((java.util.Map)defaultValue(fields()[4]));
+ record.metadata = fieldSetFlags()[5] ? this.metadata : (org.apache.gora.examples.generated.Metadata) Metadata.newBuilder().build();
return record;
} catch (Exception e) {
throw new org.apache.avro.AvroRuntimeException(e);
@@ -407,6 +398,10 @@ public class WebPage extends org.apache.
return TOMBSTONE;
}
+ public WebPage newInstance(){
+ return newBuilder().build();
+ }
+
private static final Tombstone TOMBSTONE = new Tombstone();
public static final class Tombstone extends WebPage implements org.apache.gora.persistency.Tombstone {
Modified: gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/Persistent.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/Persistent.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/Persistent.java (original)
+++ gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/Persistent.java Thu Jan 9 15:17:01 2014
@@ -109,4 +109,11 @@ public interface Persistent extends Spec
*/
public List<Field> getUnmanagedFields();
+ /**
+ * Constructs a new instance of the object by using appropriate builder. This
+ * method is intended to be used by Gora framework.
+ *
+ * @return a new instance of the object
+ */
+ Persistent newInstance();
}
\ No newline at end of file
Modified: gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/impl/BeanFactoryImpl.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/impl/BeanFactoryImpl.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/impl/BeanFactoryImpl.java (original)
+++ gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/impl/BeanFactoryImpl.java Thu Jan 9 15:17:01 2014
@@ -78,13 +78,7 @@ public class BeanFactoryImpl<K, T extend
@Override
public T newPersistent() {
- try {
- return persistentClass.newInstance();
- } catch (InstantiationException e) {
- throw new RuntimeException(e);
- } catch (IllegalAccessException e) {
- throw new RuntimeException(e);
- }
+ return (T) persistent.newInstance();
}
@Override
Modified: gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/impl/PersistentBase.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/impl/PersistentBase.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/impl/PersistentBase.java (original)
+++ gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/impl/PersistentBase.java Thu Jan 9 15:17:01 2014
@@ -182,12 +182,7 @@ public abstract class PersistentBase ext
for (Field field : getSchema().getFields()) {
if (!unmanagedFields.contains(field))
continue;
- /*
- * TODO: Its more in the spirit of Gora's clear method to actually clear
- * data structures, but since avro no-longer defaults to having empty
- * structures the way to do this consistently would be complicated.
- */
- put(field.pos(), null);
+ put(field.pos(), PersistentData.get().deepCopy(field.schema(), PersistentData.get().getDefaultValue(field)));
}
clearDirty();
}
Modified: gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mock/persistency/MockPersistent.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mock/persistency/MockPersistent.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mock/persistency/MockPersistent.java (original)
+++ gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mock/persistency/MockPersistent.java Thu Jan 9 15:17:01 2014
@@ -19,6 +19,7 @@
package org.apache.gora.mock.persistency;
import org.apache.avro.Schema;
+import org.apache.gora.persistency.Persistent;
import org.apache.gora.persistency.Tombstone;
import org.apache.gora.persistency.impl.PersistentBase;
@@ -79,5 +80,9 @@ public class MockPersistent extends Pers
return new Tombstone(){};
}
-
+ @Override
+ public Persistent newInstance() {
+ return new MockPersistent();
+ }
+
}
Modified: gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/persistency/impl/TestPersistentBase.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/persistency/impl/TestPersistentBase.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/persistency/impl/TestPersistentBase.java (original)
+++ gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/persistency/impl/TestPersistentBase.java Thu Jan 9 15:17:01 2014
@@ -115,24 +115,20 @@ public class TestPersistentBase {
WebPage page = WebPage.newBuilder().build();
page.setUrl(new Utf8("http://foo.com"));
- page.setParsedContent(new ArrayList<CharSequence>());
page.getParsedContent().add(new Utf8("foo"));
- page.setOutlinks(new HashMap<CharSequence, CharSequence>());
page.getOutlinks().put(new Utf8("foo"), new Utf8("bar"));
page.setContent(ByteBuffer.wrap("foo baz bar".getBytes()));
page.clear();
assertNull(page.getUrl());
- assertNull(page.getParsedContent());
- assertNull(page.getOutlinks());
+ assertEquals(0, page.getParsedContent().size());
+ assertEquals(0, page.getOutlinks().size());
assertNull(page.getContent());
//set fields again
page.setUrl(new Utf8("http://bar.com"));
- page.setParsedContent(new ArrayList<CharSequence>());
page.getParsedContent().add(new Utf8("bar"));
- page.setOutlinks(new HashMap<CharSequence, CharSequence>());
page.getOutlinks().put(new Utf8("bar"), new Utf8("baz"));
page.setContent(ByteBuffer.wrap("foo baz bar barbaz".getBytes()));
Modified: gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/store/DataStoreTestUtil.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/store/DataStoreTestUtil.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/store/DataStoreTestUtil.java (original)
+++ gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/store/DataStoreTestUtil.java Thu Jan 9 15:17:01 2014
@@ -97,12 +97,22 @@ public class DataStoreTestUtil {
return employee;
}
- public static <K> Employee createBoss(
- DataStore<K, Employee> dataStore) throws IOException, Exception {
+ private static <K> WebPage createWebPage(DataStore<K, Employee> dataStore) {
+ WebPage webpage = WebPage.newBuilder().build();
+ webpage.setUrl(new Utf8("url.."));
+ webpage.setContent(ByteBuffer.wrap("test content".getBytes()));
+ webpage.setParsedContent(new ArrayList<CharSequence>());
+ Metadata metadata = Metadata.newBuilder().build();
+ webpage.setMetadata(metadata);
+ return webpage;
+ }
+
+ public static <K> Employee createBoss(DataStore<K, Employee> dataStore)
+ throws IOException, Exception {
Employee employee = Employee.newBuilder().build();
employee.setName(new Utf8("Random boss"));
- employee.setDateOfBirth( System.currentTimeMillis() - 22L * YEAR_IN_MS );
+ employee.setDateOfBirth(System.currentTimeMillis() - 22L * YEAR_IN_MS);
employee.setSalary(1000000);
employee.setSsn(new Utf8("202020202020"));
return employee;
@@ -204,9 +214,7 @@ public class DataStoreTestUtil {
webpage.setUrl(new Utf8("url..")) ;
webpage.setContent(ByteBuffer.wrap("test content".getBytes())) ;
webpage.setParsedContent(new ArrayList<CharSequence>());
- webpage.setOutlinks(new HashMap<CharSequence, CharSequence>());
Metadata metadata = new BeanFactoryImpl<String,Metadata>(String.class,Metadata.class).newPersistent();
- metadata.setData(new HashMap<CharSequence, CharSequence>());
webpage.setMetadata(metadata) ;
employee.setWebpage(webpage) ;
@@ -242,6 +250,10 @@ public class DataStoreTestUtil {
public static void testGetEmployeeWithFields(DataStore<String, Employee> dataStore)
throws IOException, Exception {
Employee employee = DataStoreTestUtil.createEmployee(dataStore);
+ WebPage webpage = createWebPage(dataStore);
+ employee.setWebpage(webpage);
+ Employee boss = createBoss(dataStore);
+ employee.setBoss(boss);
String ssn = employee.getSsn().toString();
dataStore.put(ssn, employee);
dataStore.flush();
@@ -488,7 +500,6 @@ public class DataStoreTestUtil {
for (parsedContentCount = 0; parsedContentCount < 5; parsedContentCount++) {
webPage.getParsedContent().add(new Utf8(parsedContent + i + "," + parsedContentCount));
}
- webPage.setOutlinks(new HashMap<CharSequence, CharSequence>());
for (int j = 0; j < urls.length; j += 2) {
webPage.getOutlinks().put(new Utf8(anchor + j), new Utf8(urls[j]));
}
@@ -900,8 +911,8 @@ public class DataStoreTestUtil {
assertNotNull(page.getUrl());
assertEquals(page.getUrl().toString(), SORTED_URLS[i]);
- assertNull("Map of Outlinks should be 'null' as the deleteByQuery "
- + "not only removes the data but also the data structure.", page.getOutlinks());
+ assertEquals("Map of Outlinks should have a size of '0' as the deleteByQuery "
+ + "not only removes the data but also the data structure.", 0, page.getOutlinks().size());
assertEquals(0, page.getParsedContent().size());
if(page.getContent() != null) {
System.out.println("url:" + page.getUrl().toString());
@@ -1015,7 +1026,6 @@ public class DataStoreTestUtil {
WebPage page = WebPage.newBuilder().build();
page.setUrl(new Utf8("http://example.com"));
- page.setOutlinks(new HashMap<CharSequence, CharSequence>());
page.getOutlinks().put(new Utf8("http://example2.com"), new Utf8("anchor2"));
page.getOutlinks().put(new Utf8("http://example3.com"), new Utf8("anchor3"));
page.getOutlinks().put(new Utf8("http://example3.com"), new Utf8("anchor4"));
Modified: gora/branches/GORA_94/gora-tutorial/src/main/avro/metricdatum.json
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-tutorial/src/main/avro/metricdatum.json?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-tutorial/src/main/avro/metricdatum.json (original)
+++ gora/branches/GORA_94/gora-tutorial/src/main/avro/metricdatum.json Thu Jan 9 15:17:01 2014
@@ -1,10 +1,10 @@
{
"type": "record",
- "name": "MetricDatum",
+ "name": "MetricDatum", "default":null,
"namespace": "org.apache.gora.tutorial.log.generated",
"fields" : [
- {"name": "metricDimension", "type": "string"},
- {"name": "timestamp", "type": "long"},
- {"name": "metric", "type" : "long"}
+ {"name": "metricDimension", "type": ["null","string"], "default":null},
+ {"name": "timestamp", "type": "long","default":0},
+ {"name": "metric", "type" : "long","default":0}
]
}
Modified: gora/branches/GORA_94/gora-tutorial/src/main/avro/pageview.json
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-tutorial/src/main/avro/pageview.json?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-tutorial/src/main/avro/pageview.json (original)
+++ gora/branches/GORA_94/gora-tutorial/src/main/avro/pageview.json Thu Jan 9 15:17:01 2014
@@ -1,15 +1,15 @@
{
"type": "record",
- "name": "Pageview",
+ "name": "Pageview", "default":null,
"namespace": "org.apache.gora.tutorial.log.generated",
"fields" : [
- {"name": "url", "type": "string"},
- {"name": "timestamp", "type": "long"},
- {"name": "ip", "type": "string"},
- {"name": "httpMethod", "type": "string"},
- {"name": "httpStatusCode", "type": "int"},
- {"name": "responseSize", "type": "int"},
- {"name": "referrer", "type": "string"},
- {"name": "userAgent", "type": "string"}
+ {"name": "url", "type": ["null","string"], "default":null},
+ {"name": "timestamp", "type": "long", "default":0},
+ {"name": "ip", "type": ["null","string"], "default":null},
+ {"name": "httpMethod", "type": ["null","string"], "default":null},
+ {"name": "httpStatusCode", "type": "int", "default":0},
+ {"name": "responseSize", "type": "int", "default":0},
+ {"name": "referrer", "type": ["null","string"], "default":null},
+ {"name": "userAgent", "type": ["null","string"], "default":null}
]
}
Modified: gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/generated/MetricDatum.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/generated/MetricDatum.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/generated/MetricDatum.java (original)
+++ gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/generated/MetricDatum.java Thu Jan 9 15:17:01 2014
@@ -6,7 +6,7 @@
package org.apache.gora.tutorial.log.generated;
@SuppressWarnings("all")
public class MetricDatum extends org.apache.gora.persistency.impl.PersistentBase implements org.apache.avro.specific.SpecificRecord, org.apache.gora.persistency.Persistent {
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"MetricDatum\",\"namespace\":\"org.apache.gora.tutorial.log.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"metricDimension\",\"type\":\"string\"},{\"name\":\"timestamp\",\"type\":\"long\"},{\"name\":\"metric\",\"type\":\"long\"}]}");
+ public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"MetricDatum\",\"namespace\":\"org.apache.gora.tutorial.log.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AA==\"},{\"name\":\"metricDimension\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"timestamp\",\"type\":\"long\",\"default\":0},{\"name\":\"metric\",\"type\":\"long\",\"default\":0}]}");
/** Bytes used to represent weather or not a field is dirty. */
private java.nio.ByteBuffer __g__dirty = java.nio.ByteBuffer.wrap(new byte[1]);
private java.lang.CharSequence metricDimension;
@@ -23,14 +23,15 @@ public class MetricDatum extends org.apa
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
+
// Used by DatumReader. Applications should not call.
@SuppressWarnings(value="unchecked")
- public void put(int field$, java.lang.Object value$) {
+ public void put(int field$, java.lang.Object value) {
switch (field$) {
- case 0: __g__dirty = (java.nio.ByteBuffer)value$; break;
- case 1: metricDimension = (java.lang.CharSequence)value$; break;
- case 2: timestamp = (java.lang.Long)value$; break;
- case 3: metric = (java.lang.Long)value$; break;
+ case 0: __g__dirty = (java.nio.ByteBuffer)(value); break;
+ case 1: metricDimension = (java.lang.CharSequence)(value); break;
+ case 2: timestamp = (java.lang.Long)(value); break;
+ case 3: metric = (java.lang.Long)(value); break;
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
@@ -39,7 +40,7 @@ public class MetricDatum extends org.apa
* Gets the value of the 'metricDimension' field.
*/
public java.lang.CharSequence getMetricDimension() {
- return metricDimension.toString();
+ return metricDimension;
}
/**
@@ -47,7 +48,7 @@ public class MetricDatum extends org.apa
* @param value the value to set.
*/
public void setMetricDimension(java.lang.CharSequence value) {
- this.metricDimension = value.toString();
+ this.metricDimension = value;
setDirty(1);
}
@@ -264,7 +265,7 @@ public class MetricDatum extends org.apa
public MetricDatum build() {
try {
MetricDatum record = new MetricDatum();
- record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) defaultValue(fields()[0]);
+ record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) java.nio.ByteBuffer.wrap(new byte[1]);
record.metricDimension = fieldSetFlags()[1] ? this.metricDimension : (java.lang.CharSequence) defaultValue(fields()[1]);
record.timestamp = fieldSetFlags()[2] ? this.timestamp : (java.lang.Long) defaultValue(fields()[2]);
record.metric = fieldSetFlags()[3] ? this.metric : (java.lang.Long) defaultValue(fields()[3]);
@@ -279,6 +280,10 @@ public class MetricDatum extends org.apa
return TOMBSTONE;
}
+ public MetricDatum newInstance(){
+ return newBuilder().build();
+ }
+
private static final Tombstone TOMBSTONE = new Tombstone();
public static final class Tombstone extends MetricDatum implements org.apache.gora.persistency.Tombstone {
Modified: gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/generated/Pageview.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/generated/Pageview.java?rev=1556830&r1=1556829&r2=1556830&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/generated/Pageview.java (original)
+++ gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/generated/Pageview.java Thu Jan 9 15:17:01 2014
@@ -6,21 +6,8 @@
package org.apache.gora.tutorial.log.generated;
@SuppressWarnings("all")
public class Pageview extends org.apache.gora.persistency.impl.PersistentBase implements org.apache.avro.specific.SpecificRecord, org.apache.gora.persistency.Persistent {
- public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"Pageview\",\"namespace\":\"org.apache.gora.tutorial.log.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty\",\"default\":\"AAA=\"},{\"name\":\"url\",\"type\":\"string\"},{\"name\":\"timestamp\",\"type\":\"long\"},{\"name\":\"ip\",\"type\":\"string\"},{\"name\":\"httpMethod\",\"type\":\"string\"},{\"name\":\"httpStatusCode\",\"type\":\"int\"},{\"name\":\"responseSize\",\"type\":\"int\"},{\"name\":\"referrer\",\"type\":\"string\"},{\"name\":\"userAgent\",\"type\":\"string\"}]}");
-
- public static final String[] _ALL_FIELDS = {
- "__g__dirty",
- "url",
- "timestamp",
- "ip",
- "httpMethod",
- "httpStatusCode",
- "responseSize",
- "referrer",
- "userAgent",
- };
-
- /** Bytes used to represent weather or not a field is dirty */
+ public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"Pageview\",\"namespace\":\"org.apache.gora.tutorial.log.generated\",\"fields\":[{\"name\":\"__g__dirty\",\"type\":\"bytes\",\"doc\":\"Bytes used to represent weather or not a field is dirty.\",\"default\":\"AAA=\"},{\"name\":\"url\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"timestamp\",\"type\":\"long\",\"default\":0},{\"name\":\"ip\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"httpMethod\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"httpStatusCode\",\"type\":\"int\",\"default\":0},{\"name\":\"responseSize\",\"type\":\"int\",\"default\":0},{\"name\":\"referrer\",\"type\":[\"null\",\"string\"],\"default\":null},{\"name\":\"userAgent\",\"type\":[\"null\",\"string\"],\"default\":null}]}");
+ /** Bytes used to represent weather or not a field is dirty. */
private java.nio.ByteBuffer __g__dirty = java.nio.ByteBuffer.wrap(new byte[2]);
private java.lang.CharSequence url;
private long timestamp;
@@ -46,19 +33,20 @@ public class Pageview extends org.apache
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
+
// Used by DatumReader. Applications should not call.
@SuppressWarnings(value="unchecked")
- public void put(int field$, java.lang.Object value$) {
+ public void put(int field$, java.lang.Object value) {
switch (field$) {
- case 0: __g__dirty = (java.nio.ByteBuffer)value$; break;
- case 1: url = (java.lang.CharSequence)value$; break;
- case 2: timestamp = (java.lang.Long)value$; break;
- case 3: ip = (java.lang.CharSequence)value$; break;
- case 4: httpMethod = (java.lang.CharSequence)value$; break;
- case 5: httpStatusCode = (java.lang.Integer)value$; break;
- case 6: responseSize = (java.lang.Integer)value$; break;
- case 7: referrer = (java.lang.CharSequence)value$; break;
- case 8: userAgent = (java.lang.CharSequence)value$; break;
+ case 0: __g__dirty = (java.nio.ByteBuffer)(value); break;
+ case 1: url = (java.lang.CharSequence)(value); break;
+ case 2: timestamp = (java.lang.Long)(value); break;
+ case 3: ip = (java.lang.CharSequence)(value); break;
+ case 4: httpMethod = (java.lang.CharSequence)(value); break;
+ case 5: httpStatusCode = (java.lang.Integer)(value); break;
+ case 6: responseSize = (java.lang.Integer)(value); break;
+ case 7: referrer = (java.lang.CharSequence)(value); break;
+ case 8: userAgent = (java.lang.CharSequence)(value); break;
default: throw new org.apache.avro.AvroRuntimeException("Bad index");
}
}
@@ -67,7 +55,7 @@ public class Pageview extends org.apache
* Gets the value of the 'url' field.
*/
public java.lang.CharSequence getUrl() {
- return url.toString();
+ return url;
}
/**
@@ -75,7 +63,7 @@ public class Pageview extends org.apache
* @param value the value to set.
*/
public void setUrl(java.lang.CharSequence value) {
- this.url = value.toString();
+ this.url = value;
setDirty(1);
}
@@ -115,7 +103,7 @@ public class Pageview extends org.apache
* Gets the value of the 'ip' field.
*/
public java.lang.CharSequence getIp() {
- return ip.toString();
+ return ip;
}
/**
@@ -123,7 +111,7 @@ public class Pageview extends org.apache
* @param value the value to set.
*/
public void setIp(java.lang.CharSequence value) {
- this.ip = value.toString();
+ this.ip = value;
setDirty(3);
}
@@ -139,7 +127,7 @@ public class Pageview extends org.apache
* Gets the value of the 'httpMethod' field.
*/
public java.lang.CharSequence getHttpMethod() {
- return httpMethod.toString();
+ return httpMethod;
}
/**
@@ -147,7 +135,7 @@ public class Pageview extends org.apache
* @param value the value to set.
*/
public void setHttpMethod(java.lang.CharSequence value) {
- this.httpMethod = value.toString();
+ this.httpMethod = value;
setDirty(4);
}
@@ -211,7 +199,7 @@ public class Pageview extends org.apache
* Gets the value of the 'referrer' field.
*/
public java.lang.CharSequence getReferrer() {
- return referrer.toString();
+ return referrer;
}
/**
@@ -219,7 +207,7 @@ public class Pageview extends org.apache
* @param value the value to set.
*/
public void setReferrer(java.lang.CharSequence value) {
- this.referrer = value.toString();
+ this.referrer = value;
setDirty(7);
}
@@ -235,7 +223,7 @@ public class Pageview extends org.apache
* Gets the value of the 'userAgent' field.
*/
public java.lang.CharSequence getUserAgent() {
- return userAgent.toString();
+ return userAgent;
}
/**
@@ -243,7 +231,7 @@ public class Pageview extends org.apache
* @param value the value to set.
*/
public void setUserAgent(java.lang.CharSequence value) {
- this.userAgent = value.toString();
+ this.userAgent = value;
setDirty(8);
}
@@ -561,7 +549,7 @@ public class Pageview extends org.apache
public Pageview build() {
try {
Pageview record = new Pageview();
- record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) defaultValue(fields()[0]);
+ record.__g__dirty = fieldSetFlags()[0] ? this.__g__dirty : (java.nio.ByteBuffer) java.nio.ByteBuffer.wrap(new byte[2]);
record.url = fieldSetFlags()[1] ? this.url : (java.lang.CharSequence) defaultValue(fields()[1]);
record.timestamp = fieldSetFlags()[2] ? this.timestamp : (java.lang.Long) defaultValue(fields()[2]);
record.ip = fieldSetFlags()[3] ? this.ip : (java.lang.CharSequence) defaultValue(fields()[3]);
@@ -581,6 +569,10 @@ public class Pageview extends org.apache
return TOMBSTONE;
}
+ public Pageview newInstance(){
+ return newBuilder().build();
+ }
+
private static final Tombstone TOMBSTONE = new Tombstone();
public static final class Tombstone extends Pageview implements org.apache.gora.persistency.Tombstone {