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 2013/08/24 02:27:41 UTC
svn commit: r1517093 [3/3] - in /gora/branches/GORA_94: ./ bin/
gora-cassandra/ gora-cassandra/src/main/java/org/apache/gora/cassandra/query/
gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/
gora-cassandra/src/main/java/org/apache/go...
Modified: gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/PersistentWSBase.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/PersistentWSBase.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/PersistentWSBase.java (original)
+++ gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/PersistentWSBase.java Sat Aug 24 00:27:39 2013
@@ -23,7 +23,6 @@ import java.util.HashMap;
import java.util.Map;
import org.apache.gora.persistency.Persistent;
-import org.apache.gora.persistency.StateManager;
/**
* Base classs implementing common functionality for Web services
@@ -43,26 +42,6 @@ public abstract class PersistentWSBase i
protected static Map<Class<?>, String[]> FIELDS =
new HashMap<Class<?>, String[]>();
- /**
- * Object used to manage the state of fields
- */
- private StateManager stateManager;
-
- /**
- * Constructor
- */
- protected PersistentWSBase() {
- this(new StateManagerWSImpl());
- }
-
- /**
- * Constructor using a stateManager object
- * @param stateManager
- */
- protected PersistentWSBase(StateManager stateManager) {
- this.stateManager = stateManager;
- stateManager.setManagedPersistent(this);
- }
/** Subclasses should call this function for all the persistable fields
* in the class to register them.
@@ -80,15 +59,6 @@ public abstract class PersistentWSBase i
FIELD_MAP.put(clazz, map);
}
- @Override
- /**
- * Gets the state manager
- */
- public StateManager getStateManager() {
- return stateManager;
- }
-
- @Override
/**
* Gets fields using a specific class
*/
@@ -96,7 +66,6 @@ public abstract class PersistentWSBase i
return FIELDS.get(getClass());
}
- @Override
/**
* Gets a specific field from the fields map
*/
@@ -104,7 +73,6 @@ public abstract class PersistentWSBase i
return FIELDS.get(getClass())[index];
}
- @Override
/**
* Gets a field index based on the field name
*/
@@ -122,36 +90,17 @@ public abstract class PersistentWSBase i
clearReadable();
}
- @Override
- /**
- * Determines if a class is new or not
- */
- public boolean isNew() {
- return getStateManager().isNew(this);
- }
-
- @Override
- /**
- * Sets this element as a new one inside the stateManager object
- */
- public void setNew() {
- getStateManager().setNew(this);
- }
-
- @Override
- /**
- * Clears a new object from the stateManager
- */
- public void clearNew() {
- getStateManager().clearNew(this);
+ private void clearReadable() {
+ // TODO Auto-generated method stub
+
}
- @Override
+ @Override
/**
* Determines if an object has been modified or not
*/
public boolean isDirty() {
- return getStateManager().isDirty(this);
+ return true;
}
@Override
@@ -160,7 +109,7 @@ public abstract class PersistentWSBase i
* based on its field index
*/
public boolean isDirty(int fieldIndex) {
- return getStateManager().isDirty(this, fieldIndex);
+ return true;
}
@Override
@@ -174,112 +123,6 @@ public abstract class PersistentWSBase i
@Override
/**
- * Sets this class as dirty
- */
- public void setDirty() {
- getStateManager().setDirty(this);
- }
-
- @Override
- /**
- * Sets a specific field as dirty using its index
- */
- public void setDirty(int fieldIndex) {
- getStateManager().setDirty(this, fieldIndex);
- }
-
- @Override
- /**
- * Sets a specific field as dirty using its name
- */
- public void setDirty(String field) {
- setDirty(getFieldIndex(field));
- }
-
- @Override
- /**
- * Clears dirty fields using its index
- */
- public void clearDirty(int fieldIndex) {
- getStateManager().clearDirty(this, fieldIndex);
- }
-
- @Override
- /**
- * Clears dirty fields using its name
- */
- public void clearDirty(String field) {
- clearDirty(getFieldIndex(field));
- }
-
- @Override
- /**
- * Clears dirty fields from the state manager
- */
- public void clearDirty() {
- getStateManager().clearDirty(this);
- }
-
- @Override
- /**
- * Checks if a field is readable using its index
- */
- public boolean isReadable(int fieldIndex) {
- return getStateManager().isReadable(this, fieldIndex);
- }
-
- @Override
- /**
- * Checks if a field is readable using its name
- */
- public boolean isReadable(String field) {
- return isReadable(getFieldIndex(field));
- }
-
- @Override
- /**
- * Sets a field as readable using its index
- */
- public void setReadable(int fieldIndex) {
- getStateManager().setReadable(this, fieldIndex);
- }
-
- @Override
- /**
- * Sets a field as readable using its name
- */
- public void setReadable(String field) {
- setReadable(getFieldIndex(field));
- }
-
- @Override
- /**
- * Clears this readable object from the state manager
- */
- public void clearReadable() {
- getStateManager().clearReadable(this);
- }
-
- @Override
- /**
- * Clears a readable object based on its field index
- * using a stateManager object
- */
- public void clearReadable(int fieldIndex) {
- getStateManager().clearReadable(this, fieldIndex);
- }
-
- @Override
- /**
- * Clears a readable object based on its field name
- * using a stateManager object
- */
- public void clearReadable(String field) {
- clearReadable(getFieldIndex(field));
- }
-
- @Override
- /**
* Determines if an object is equal to this class
*/
public boolean equals(Object o) {
Modified: gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/store/impl/DataStoreBase.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/store/impl/DataStoreBase.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/store/impl/DataStoreBase.java (original)
+++ gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/store/impl/DataStoreBase.java Sat Aug 24 00:27:39 2013
@@ -22,14 +22,15 @@ import java.io.Closeable;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
+import java.util.List;
import java.util.Map;
import java.util.Properties;
import org.apache.avro.Schema;
import org.apache.avro.Schema.Field;
+import org.apache.avro.specific.SpecificDatumReader;
+import org.apache.avro.specific.SpecificDatumWriter;
import org.apache.commons.lang.builder.EqualsBuilder;
-import org.apache.gora.avro.PersistentDatumReader;
-import org.apache.gora.avro.PersistentDatumWriter;
import org.apache.gora.avro.store.AvroStore;
import org.apache.gora.persistency.BeanFactory;
import org.apache.gora.persistency.impl.BeanFactoryImpl;
@@ -70,9 +71,9 @@ public abstract class DataStoreBase<K, T
protected Properties properties;
- protected PersistentDatumReader<T> datumReader;
+ protected SpecificDatumReader<T> datumReader;
- protected PersistentDatumWriter<T> datumWriter;
+ protected SpecificDatumWriter<T> datumWriter;
public static final Logger LOG = LoggerFactory.getLogger(AvroStore.class);
@@ -93,8 +94,8 @@ public abstract class DataStoreBase<K, T
autoCreateSchema = DataStoreFactory.getAutoCreateSchema(properties, this);
this.properties = properties;
- datumReader = new PersistentDatumReader<T>(schema, false);
- datumWriter = new PersistentDatumWriter<T>(schema, false);
+ datumReader = new SpecificDatumReader<T>(schema);
+ datumWriter = new SpecificDatumWriter<T>(schema);
}
@Override
@@ -164,7 +165,12 @@ public abstract class DataStoreBase<K, T
if(fields != null) {
return fields;
}
- return beanFactory.getCachedPersistent().getFields();
+ List<Field> schemaFields = beanFactory.getCachedPersistent().getSchema().getFields();
+ String[] fieldNames = new String[schemaFields.size()];
+ for(int i = 0; i<fieldNames.length; i++ ){
+ fieldNames[i] = schemaFields.get(i).name();
+ }
+ return fieldNames;
}
@Override
@@ -234,25 +240,28 @@ public abstract class DataStoreBase<K, T
/**
* Returns the name of the schema to use for the persistent class.
*
- * The schema name is prefixed with schema.prefix from {@link Configuration}.
- * The schema name in the defined properties is returned. If null then
+ * First the schema name in the {@link Configuration} is used. If null,
+ * the schema name in the defined properties is returned. If null then
* the provided mappingSchemaName is returned. If this is null too,
* the class name, without the package, of the persistent class is returned.
* @param mappingSchemaName the name of the schema as read from the mapping file
* @param persistentClass persistent class
*/
protected String getSchemaName(String mappingSchemaName, Class<?> persistentClass) {
- String prefix = getOrCreateConf().get("schema.prefix","");
+ String confSchemaName = getOrCreateConf().get("preferred.schema.name");
+ if (confSchemaName != null) {
+ return confSchemaName;
+ }
String schemaName = DataStoreFactory.getDefaultSchemaName(properties, this);
if(schemaName != null) {
- return prefix+schemaName;
+ return schemaName;
}
if(mappingSchemaName != null) {
- return prefix+mappingSchemaName;
+ return mappingSchemaName;
}
- return prefix+StringUtils.getClassname(persistentClass);
+ return StringUtils.getClassname(persistentClass);
}
}
Modified: gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/AvroUtils.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/AvroUtils.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/AvroUtils.java (original)
+++ gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/AvroUtils.java Sat Aug 24 00:27:39 2013
@@ -18,17 +18,25 @@
package org.apache.gora.util;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.avro.Schema;
import org.apache.avro.Schema.Field;
+import org.apache.avro.io.BinaryEncoder;
+import org.apache.avro.io.Decoder;
+import org.apache.avro.io.DecoderFactory;
+import org.apache.avro.io.EncoderFactory;
import org.apache.avro.reflect.ReflectData;
+import org.apache.avro.specific.SpecificDatumReader;
+import org.apache.avro.specific.SpecificDatumWriter;
import org.apache.gora.persistency.Persistent;
/**
- * An utility class for Avro related tasks
+ * An utility class for Avro related tasks
*/
public class AvroUtils {
@@ -38,31 +46,87 @@ public class AvroUtils {
public static Map<String, Field> getFieldMap(Schema schema) {
List<Field> fields = schema.getFields();
HashMap<String, Field> fieldMap = new HashMap<String, Field>(fields.size());
- for(Field field: fields) {
+ for (Field field : fields) {
fieldMap.put(field.name(), field);
}
return fieldMap;
}
-
+
@SuppressWarnings("unchecked")
public static Object getEnumValue(Schema schema, String symbol) {
return Enum.valueOf(ReflectData.get().getClass(schema), symbol);
}
-
+
public static Object getEnumValue(Schema schema, int enumOrdinal) {
String symbol = schema.getEnumSymbols().get(enumOrdinal);
return getEnumValue(schema, symbol);
}
-
+
/**
* Returns the schema of the class
*/
- public static Schema getSchema(Class<? extends Persistent> clazz)
- throws SecurityException, NoSuchFieldException
- , IllegalArgumentException, IllegalAccessException {
-
- java.lang.reflect.Field field = clazz.getDeclaredField("_SCHEMA");
+ public static Schema getSchema(Class<? extends Persistent> clazz)
+ throws SecurityException, NoSuchFieldException, IllegalArgumentException,
+ IllegalAccessException {
+
+ java.lang.reflect.Field field = clazz.getDeclaredField("SCHEMA$");
return (Schema) field.get(null);
}
-
+
+ /**
+ * Return the field names from a persistent object
+ *
+ * @param persistent
+ * the persistent object to get the fields names from
+ * @return the field names
+ */
+ public static String[] getPersistentFieldNames(Persistent persistent) {
+ return getSchemaFieldNames(persistent.getSchema());
+ }
+
+ /**
+ * Return the field names from a schema object
+ *
+ * @param persistent
+ * the persistent object to get the fields names from
+ * @return the field names
+ */
+ public static String[] getSchemaFieldNames(Schema schema) {
+ List<Field> fields = schema.getFields();
+ String[] fieldNames = new String[fields.size() - 1];
+ for (int i = 0; i < fieldNames.length; i++) {
+ fieldNames[i] = fields.get(i + 1).name();
+ }
+ return fieldNames;
+ }
+
+ public static <T extends Persistent> T deepClonePersistent(T persistent) {
+ ByteArrayOutputStream bos = new ByteArrayOutputStream();
+ BinaryEncoder enc = EncoderFactory.get().binaryEncoder(bos, null);
+ SpecificDatumWriter<Persistent> writer = new SpecificDatumWriter<Persistent>(
+ persistent.getSchema());
+ try {
+ writer.write(persistent, enc);
+ } catch (IOException e) {
+ throw new RuntimeException(
+ "Unable to serialize avro object to byte buffer - "
+ + "please report this issue to the Gora bugtracker "
+ + "or your administrator.");
+ }
+ byte[] value = bos.toByteArray();
+ Decoder dec = DecoderFactory.get().binaryDecoder(value, null);
+ @SuppressWarnings("unchecked")
+ SpecificDatumReader<T> reader = new SpecificDatumReader<T>(
+ (Class<T>) persistent.getClass());
+ try {
+ return reader.read(null, dec);
+ } catch (IOException e) {
+ throw new RuntimeException(
+ "Unable to deserialize avro object from byte buffer - "
+ + "please report this issue to the Gora bugtracker "
+ + "or your administrator.");
+ }
+
+ }
+
}
Modified: gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/ByteUtils.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/ByteUtils.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/ByteUtils.java (original)
+++ gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/ByteUtils.java Sat Aug 24 00:27:39 2013
@@ -43,9 +43,10 @@ import java.nio.ByteBuffer;
import org.apache.avro.Schema;
import org.apache.avro.Schema.Type;
import org.apache.avro.reflect.ReflectData;
+import org.apache.avro.specific.SpecificDatumReader;
+import org.apache.avro.specific.SpecificDatumWriter;
+import org.apache.avro.specific.SpecificRecord;
import org.apache.avro.util.Utf8;
-import org.apache.gora.avro.PersistentDatumReader;
-import org.apache.gora.avro.PersistentDatumWriter;
import org.apache.hadoop.io.WritableUtils;
// This code is copied almost directly from HBase project's Bytes class.
@@ -677,30 +678,31 @@ public class ByteUtils {
}
@SuppressWarnings("unchecked")
- public static Object fromBytes( byte[] val, Schema schema
- , PersistentDatumReader<?> datumReader, Object object)
+ public static <T> T fromBytes( byte[] val, Schema schema
+ , SpecificDatumReader<T> datumReader, T object)
throws IOException {
Type type = schema.getType();
switch (type) {
case ENUM:
String symbol = schema.getEnumSymbols().get(val[0]);
- return Enum.valueOf(ReflectData.get().getClass(schema), symbol);
- case STRING: return new Utf8(toString(val));
- case BYTES: return ByteBuffer.wrap(val);
- case INT: return bytesToVint(val);
- case LONG: return bytesToVlong(val);
- case FLOAT: return toFloat(val);
- case DOUBLE: return toDouble(val);
- case BOOLEAN: return val[0] != 0;
+ return (T)Enum.valueOf(ReflectData.get().getClass(schema), symbol);
+ case STRING: return (T)new Utf8(toString(val));
+ case BYTES: return (T)ByteBuffer.wrap(val);
+ case INT: return (T)Integer.valueOf(bytesToVint(val));
+ case LONG: return (T)Long.valueOf(bytesToVlong(val));
+ case FLOAT: return (T)Float.valueOf(toFloat(val));
+ case DOUBLE: return (T)Double.valueOf(toDouble(val));
+ case BOOLEAN: return (T)Boolean.valueOf(val[0] != 0);
case RECORD: //fall
case MAP:
- case ARRAY: return IOUtils.deserialize(val, datumReader, schema, object);
+ case ARRAY: return (T)IOUtils.deserialize(val, (SpecificDatumReader<SpecificRecord>)datumReader, schema, (SpecificRecord)object);
default: throw new RuntimeException("Unknown type: "+type);
}
}
- public static byte[] toBytes(Object o, Schema schema
- , PersistentDatumWriter<?> datumWriter)
+ @SuppressWarnings("unchecked")
+ public static <T> byte[] toBytes(T o, Schema schema
+ , SpecificDatumWriter<T> datumWriter)
throws IOException {
Type type = schema.getType();
switch (type) {
@@ -714,7 +716,7 @@ public class ByteUtils {
case ENUM: return new byte[] { (byte)((Enum<?>) o).ordinal() };
case RECORD: //fall
case MAP:
- case ARRAY: return IOUtils.serialize(datumWriter, schema, o);
+ case ARRAY: return IOUtils.serialize((SpecificDatumWriter<SpecificRecord>)datumWriter, schema, (SpecificRecord)o);
default: throw new RuntimeException("Unknown type: "+type);
}
}
Modified: gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/IOUtils.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/IOUtils.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/IOUtils.java (original)
+++ gora/branches/GORA_94/gora-core/src/main/java/org/apache/gora/util/IOUtils.java Sat Aug 24 00:27:39 2013
@@ -38,11 +38,12 @@ import org.apache.avro.io.BinaryEncoder;
import org.apache.avro.io.Decoder;
import org.apache.avro.io.DecoderFactory;
import org.apache.avro.io.Encoder;
-import org.apache.avro.ipc.ByteBufferInputStream;
-import org.apache.avro.ipc.ByteBufferOutputStream;
-import org.apache.gora.avro.PersistentDatumReader;
-import org.apache.gora.avro.PersistentDatumWriter;
-import org.apache.gora.persistency.impl.PersistentBase;
+import org.apache.avro.io.EncoderFactory;
+import org.apache.avro.specific.SpecificDatumReader;
+import org.apache.avro.specific.SpecificDatumWriter;
+import org.apache.avro.specific.SpecificRecord;
+import org.apache.avro.util.ByteBufferInputStream;
+import org.apache.avro.util.ByteBufferOutputStream;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.io.DataInputBuffer;
import org.apache.hadoop.io.DataOutputBuffer;
@@ -162,20 +163,20 @@ public class IOUtils {
/**
* Serializes the field object using the datumWriter.
*/
- public static<T extends PersistentBase> void serialize(OutputStream os,
- PersistentDatumWriter<T> datumWriter, Schema schema, Object object)
+ public static<T extends SpecificRecord> void serialize(OutputStream os,
+ SpecificDatumWriter<T> datumWriter, Schema schema, T object)
throws IOException {
- BinaryEncoder encoder = new BinaryEncoder(os);
- datumWriter.write(schema, object, encoder);
+ BinaryEncoder encoder = EncoderFactory.get().binaryEncoder(os, null);
+ datumWriter.write(object, encoder);
encoder.flush();
}
/**
* Serializes the field object using the datumWriter.
*/
- public static<T extends PersistentBase> byte[] serialize(PersistentDatumWriter<T> datumWriter
- , Schema schema, Object object) throws IOException {
+ public static<T extends SpecificRecord> byte[] serialize(SpecificDatumWriter<T> datumWriter
+ , Schema schema, T object) throws IOException {
ByteArrayOutputStream os = new ByteArrayOutputStream();
serialize(os, datumWriter, schema, object);
return os.toByteArray();
@@ -251,34 +252,21 @@ public class IOUtils {
/**
* Deserializes the field object using the datumReader.
*/
- @SuppressWarnings("unchecked")
- public static<K, T extends PersistentBase> K deserialize(InputStream is,
- PersistentDatumReader<T> datumReader, Schema schema, K object)
+ public static<K, T extends SpecificRecord> T deserialize(InputStream is,
+ SpecificDatumReader<T> datumReader, Schema schema, T object)
throws IOException {
- decoder = DecoderFactory.defaultFactory().createBinaryDecoder(is, decoder);
- return (K)datumReader.read(object, schema, decoder);
+ decoder = DecoderFactory.get().binaryDecoder(is, decoder);
+ return (T)datumReader.read(object, decoder);
}
/**
* Deserializes the field object using the datumReader.
*/
- @SuppressWarnings("unchecked")
- public static<K, T extends PersistentBase> K deserialize(byte[] bytes,
- PersistentDatumReader<T> datumReader, Schema schema, K object)
+ public static<K, T extends SpecificRecord> T deserialize(byte[] bytes,
+ SpecificDatumReader<T> datumReader, Schema schema, T object)
throws IOException {
- decoder = DecoderFactory.defaultFactory().createBinaryDecoder(bytes, decoder);
- return (K)datumReader.read(object, schema, decoder);
- }
-
-
- /**
- * Serializes the field object using the datumWriter.
- */
- public static<T extends PersistentBase> byte[] deserialize(PersistentDatumWriter<T> datumWriter
- , Schema schema, Object object) throws IOException {
- ByteArrayOutputStream os = new ByteArrayOutputStream();
- serialize(os, datumWriter, schema, object);
- return os.toByteArray();
+ decoder = DecoderFactory.get().binaryDecoder(bytes, decoder);
+ return (T)datumReader.read(object, decoder);
}
/**
Added: gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/examples/TestWebPageDataCreator.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/examples/TestWebPageDataCreator.java?rev=1517093&view=auto
==============================================================================
--- gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/examples/TestWebPageDataCreator.java (added)
+++ gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/examples/TestWebPageDataCreator.java Sat Aug 24 00:27:39 2013
@@ -0,0 +1,19 @@
+package org.apache.gora.examples;
+
+import java.io.IOException;
+
+import org.apache.gora.examples.generated.WebPage;
+import org.apache.gora.memory.store.MemStore;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+@RunWith(JUnit4.class)
+public class TestWebPageDataCreator {
+
+ @Test public void testCreatesData() throws IOException{
+ MemStore<String, WebPage> dataStore = new MemStore<String, WebPage>();
+ WebPageDataCreator.createWebPageData(dataStore);
+ }
+
+}
Modified: gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/DataStoreMapReduceTestBase.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/DataStoreMapReduceTestBase.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/DataStoreMapReduceTestBase.java (original)
+++ gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/DataStoreMapReduceTestBase.java Sat Aug 24 00:27:39 2013
@@ -37,7 +37,6 @@ import org.slf4j.LoggerFactory;
* class, which actually only uses {@link MapReduceTestUtils} methods to
* run the tests.
*/
-@SuppressWarnings("deprecation")
public abstract class DataStoreMapReduceTestBase extends HadoopTestCase {
public static final Logger LOG = LoggerFactory.getLogger(DataStoreMapReduceTestBase.class);
@@ -71,8 +70,8 @@ public abstract class DataStoreMapReduce
@Override
public void tearDown() throws Exception {
LOG.info("Tearing down Hadoop Test Case...");
- super.tearDown();
webPageStore.close();
+ super.tearDown();
}
protected abstract DataStore<String, WebPage> createWebPageDataStore()
Modified: gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/MapReduceTestUtils.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/MapReduceTestUtils.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/MapReduceTestUtils.java (original)
+++ gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/MapReduceTestUtils.java Sat Aug 24 00:27:39 2013
@@ -19,10 +19,10 @@
package org.apache.gora.mapreduce;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.apache.avro.Schema.Field;
import org.apache.gora.examples.WebPageDataCreator;
import org.apache.gora.examples.generated.TokenDatum;
import org.apache.gora.examples.generated.WebPage;
@@ -32,8 +32,11 @@ import org.apache.gora.query.Query;
import org.apache.gora.store.DataStore;
import org.apache.gora.store.impl.DataStoreBase;
import org.apache.hadoop.conf.Configuration;
+
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
public class MapReduceTestUtils {
@@ -50,7 +53,12 @@ public class MapReduceTestUtils {
QueryCounter<String,WebPage> counter = new QueryCounter<String,WebPage>(conf);
Query<String,WebPage> query = dataStore.newQuery();
- query.setFields(WebPage._ALL_FIELDS);
+ List<Field> fields = WebPage.SCHEMA$.getFields();
+ String[] fieldNames = new String[fields.size()];
+ for(int i = 0; i< fieldNames.length; i++){
+ fieldNames[i] = fields.get(i).name();
+ }
+ query.setFields(fieldNames);
dataStore.close();
@@ -65,7 +73,7 @@ public class MapReduceTestUtils {
public static void testWordCount(Configuration conf, DataStore<String,WebPage> inStore, DataStore<String,
TokenDatum> outStore) throws Exception {
- //Datastore now has to be a Hadoop based datastore
+ //Datastore now has to be a Hadoop based datastore
((DataStoreBase<String,WebPage>)inStore).setConf(conf);
((DataStoreBase<String,TokenDatum>)outStore).setConf(conf);
@@ -97,6 +105,6 @@ public class MapReduceTestUtils {
String token, int count) throws Exception {
TokenDatum datum = outStore.get(token, null);
assertNotNull("token:" + token + " cannot be found in datastore", datum);
- assertEquals("count for token:" + token + " is wrong", count, datum.getCount());
+ assertEquals("count for token:" + token + " is wrong", count, datum.getCount()); //.intValue()?
}
}
Modified: gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/TestGoraInputFormat.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/TestGoraInputFormat.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/TestGoraInputFormat.java (original)
+++ gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/TestGoraInputFormat.java Sat Aug 24 00:27:39 2013
@@ -22,6 +22,7 @@ import java.io.IOException;
import java.util.Arrays;
import java.util.List;
+import org.apache.avro.Schema.Field;
import org.apache.gora.examples.generated.Employee;
import org.apache.gora.mock.persistency.MockPersistent;
import org.apache.gora.mock.query.MockQuery;
@@ -41,7 +42,8 @@ public class TestGoraInputFormat {
MockDataStore store = MockDataStore.get();
MockQuery query = store.newQuery();
- query.setFields(Employee._ALL_FIELDS);
+
+ query.setFields(getEmployeeFieldNames());
GoraInputFormat.setInput(job, query, false);
GoraInputFormat<String, MockPersistent> inputFormat
@@ -61,7 +63,16 @@ public class TestGoraInputFormat {
InputSplit split = splits.get(0);
PartitionQuery query = ((GoraInputSplit)split).getQuery();
- assertTrue(Arrays.equals(Employee._ALL_FIELDS, query.getFields()));
+ Assert.assertTrue(Arrays.equals(getEmployeeFieldNames(), query.getFields()));
+ }
+
+ private static String[] getEmployeeFieldNames(){
+ List<Field> fields = Employee.SCHEMA$.getFields();
+ String[] fieldNames = new String[fields.size()];
+ for(int i = 0; i< fieldNames.length; i++){
+ fieldNames[i] = fields.get(i).name();
+ }
+ return fieldNames;
}
}
\ No newline at end of file
Modified: gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/TestPersistentSerialization.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/TestPersistentSerialization.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/TestPersistentSerialization.java (original)
+++ gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/mapreduce/TestPersistentSerialization.java Sat Aug 24 00:27:39 2013
@@ -18,6 +18,9 @@
package org.apache.gora.mapreduce;
+import java.util.ArrayList;
+import java.util.HashMap;
+
import org.apache.avro.util.Utf8;
import org.apache.gora.examples.WebPageDataCreator;
import org.apache.gora.examples.generated.Employee;
@@ -31,8 +34,9 @@ import org.apache.hadoop.conf.Configurat
import org.junit.Test;
import static org.junit.Assert.assertEquals;
-/** Test class for {@link PersistentSerialization}, {@link PersistentSerializer}
- * and {@link PersistentDeserializer}
+/**
+ * Test class for {@link PersistentSerialization}, {@link PersistentSerializer}
+ * and {@link PersistentDeserializer}
*/
public class TestPersistentSerialization {
@@ -75,8 +79,8 @@ public class TestPersistentSerialization
Result<String, WebPage> result = store.newQuery().execute();
- int i=0;
- while(result.next()) {
+ int i = 0;
+ while (result.next()) {
WebPage page = result.get();
TestIOUtils.testSerializeDeserialize(page);
i++;
@@ -93,10 +97,10 @@ public class TestPersistentSerialization
page1.setUrl(new Utf8("foo"));
page2.setUrl(new Utf8("baz"));
page3.setUrl(new Utf8("bar"));
-
- page1.addToParsedContent(new Utf8("coo"));
-
- page2.putToOutlinks(new Utf8("a"), new Utf8("b"));
+ page1.setParsedContent(new ArrayList<CharSequence>());
+ page1.getParsedContent().add(new Utf8("coo"));
+ page2.setOutlinks(new HashMap<CharSequence, CharSequence>());
+ page2.getOutlinks().put(new Utf8("a"), new Utf8("b"));
TestIOUtils.testSerializeDeserialize(page1, page2, page3);
}
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=1517093&r1=1517092&r2=1517093&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 Sat Aug 24 00:27:39 2013
@@ -19,8 +19,7 @@
package org.apache.gora.mock.persistency;
import org.apache.avro.Schema;
-import org.apache.gora.persistency.Persistent;
-import org.apache.gora.persistency.StateManager;
+import org.apache.gora.persistency.Tombstone;
import org.apache.gora.persistency.impl.PersistentBase;
public class MockPersistent extends PersistentBase {
@@ -36,9 +35,6 @@ public class MockPersistent extends Pers
public MockPersistent() {
}
- public MockPersistent(StateManager stateManager) {
- super(stateManager);
- }
@Override
public Object get(int field) {
@@ -79,22 +75,9 @@ public class MockPersistent extends Pers
}
@Override
- public String getField(int index) {
- return null;
- }
-
- @Override
- public int getFieldIndex(String field) {
- return 0;
- }
-
- @Override
- public String[] getFields() {
- return null;
+ public Tombstone getTombstone() {
+ return new Tombstone(){};
}
- @Override
- public Persistent newInstance(StateManager stateManager) {
- return new MockPersistent(stateManager);
- }
+
}
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=1517093&r1=1517092&r2=1517093&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 Sat Aug 24 00:27:39 2013
@@ -20,13 +20,19 @@ package org.apache.gora.persistency.impl
import java.io.IOException;
import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.HashMap;
import org.apache.avro.util.Utf8;
import org.apache.gora.examples.generated.Employee;
+import org.apache.gora.examples.generated.ImmutableFields;
+import org.apache.gora.examples.generated.Metadata;
+import org.apache.gora.examples.generated.V2;
import org.apache.gora.examples.generated.WebPage;
import org.apache.gora.memory.store.MemStore;
import org.apache.gora.store.DataStoreFactory;
import org.apache.gora.store.DataStoreTestUtil;
+import org.apache.gora.util.AvroUtils;
import org.apache.hadoop.conf.Configuration;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
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=1517093&r1=1517092&r2=1517093&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 Sat Aug 24 00:27:39 2013
@@ -53,6 +53,7 @@ import org.apache.gora.persistency.impl.
import org.apache.gora.query.PartitionQuery;
import org.apache.gora.query.Query;
import org.apache.gora.query.Result;
+import org.apache.gora.util.AvroUtils;
import org.apache.gora.util.ByteUtils;
import org.apache.gora.util.StringUtils;
import org.junit.Test;
@@ -159,7 +160,7 @@ public class DataStoreTestUtil {
dataStore.put(ssn, employee);
dataStore.flush();
- Employee after = dataStore.get(ssn, Employee._ALL_FIELDS);
+ Employee after = dataStore.get(ssn, AvroUtils.getSchemaFieldNames(Employee.SCHEMA$));
assertEquals(employee, after);
}
@@ -337,9 +338,9 @@ public class DataStoreTestUtil {
for (int i = 0; i < 1; i++) {
String key = Long.toString(ssn + i);
Employee employee = dataStore.get(key);
- assertEquals(now - 18L * YEAR_IN_MS, employee.getDateOfBirth());
+ assertEquals(now - 18L * YEAR_IN_MS, employee.getDateOfBirth()); //.intValue()?
assertEquals("John Doe " + (i + 5), employee.getName().toString());
- assertEquals(120000, employee.getSalary());
+ assertEquals(120000, employee.getSalary()); //.intValue()?
}
}
@@ -360,10 +361,10 @@ public class DataStoreTestUtil {
WebPage webPage = dataStore.newPersistent();
webPage.setUrl(new Utf8(urls[i]));
for (parsedContentCount = 0; parsedContentCount < 5; parsedContentCount++) {
- webPage.addToParsedContent(new Utf8(parsedContent + i + "," + parsedContentCount));
+ webPage.getParsedContent().add(new Utf8(parsedContent + i + "," + parsedContentCount));
}
for (int j = 0; j < urls.length; j += 2) {
- webPage.putToOutlinks(new Utf8(anchor + j), new Utf8(urls[j]));
+ webPage.getOutlinks().put(new Utf8(anchor + j), new Utf8(urls[j]));
}
dataStore.put(webPage.getUrl().toString(), webPage);
}
@@ -374,11 +375,11 @@ public class DataStoreTestUtil {
WebPage webPage = dataStore.get(urls[i]);
webPage.setContent(ByteBuffer.wrap(ByteUtils.toBytes(content + i)));
for (parsedContentCount = 5; parsedContentCount < 10; parsedContentCount++) {
- webPage.addToParsedContent(new Utf8(parsedContent + i + "," + parsedContentCount));
+ webPage.getParsedContent().add(new Utf8(parsedContent + i + "," + parsedContentCount));
}
webPage.getOutlinks().clear();
for (int j = 1; j < urls.length; j += 2) {
- webPage.putToOutlinks(new Utf8(anchor + j), new Utf8(urls[j]));
+ webPage.getOutlinks().put(new Utf8(anchor + j), new Utf8(urls[j]));
}
dataStore.put(webPage.getUrl().toString(), webPage);
}
@@ -390,13 +391,13 @@ public class DataStoreTestUtil {
assertEquals(content + i, ByteUtils.toString( toByteArray(webPage.getContent()) ));
assertEquals(10, webPage.getParsedContent().size());
int j = 0;
- for (Utf8 pc : webPage.getParsedContent()) {
+ for (CharSequence pc : webPage.getParsedContent()) {
assertEquals(parsedContent + i + "," + j, pc.toString());
j++;
}
int count = 0;
for (j = 1; j < urls.length; j += 2) {
- Utf8 link = webPage.getOutlinks().get(new Utf8(anchor + j));
+ CharSequence link = webPage.getOutlinks().get(new Utf8(anchor + j));
assertNotNull(link);
assertEquals(urls[j], link.toString());
count++;
@@ -407,7 +408,7 @@ public class DataStoreTestUtil {
for (int i = 0; i < urls.length; i++) {
WebPage webPage = dataStore.get(urls[i]);
for (int j = 0; j < urls.length; j += 2) {
- webPage.putToOutlinks(new Utf8(anchor + j), new Utf8(urls[j]));
+ webPage.getOutlinks().put(new Utf8(anchor + j), new Utf8(urls[j]));
}
dataStore.put(webPage.getUrl().toString(), webPage);
}
@@ -418,7 +419,7 @@ public class DataStoreTestUtil {
WebPage webPage = dataStore.get(urls[i]);
int count = 0;
for (int j = 0; j < urls.length; j++) {
- Utf8 link = webPage.getOutlinks().get(new Utf8(anchor + j));
+ CharSequence link = webPage.getOutlinks().get(new Utf8(anchor + j));
assertNotNull(link);
assertEquals(urls[j], link.toString());
count++;
@@ -710,7 +711,7 @@ public class DataStoreTestUtil {
WebPageDataCreator.createWebPageData(store);
query = store.newQuery();
- query.setFields(WebPage._ALL_FIELDS);
+ query.setFields(AvroUtils.getSchemaFieldNames(WebPage.SCHEMA$));
assertNumResults(store.newQuery(), URLS.length);
store.deleteByQuery(query);
@@ -753,8 +754,8 @@ public class DataStoreTestUtil {
WebPageDataCreator.createWebPageData(store);
query = store.newQuery();
- query.setFields(WebPage.Field.OUTLINKS.getName()
- , WebPage.Field.PARSED_CONTENT.getName(), WebPage.Field.CONTENT.getName());
+ query.setFields("outlinks"
+ , "parsedContent", "content");
assertNumResults(store.newQuery(), URLS.length);
store.deleteByQuery(query);
@@ -786,7 +787,7 @@ public class DataStoreTestUtil {
WebPageDataCreator.createWebPageData(store);
query = store.newQuery();
- query.setFields(WebPage.Field.URL.getName());
+ query.setFields("url");
String startKey = SORTED_URLS[NUM_KEYS];
String endKey = SORTED_URLS[SORTED_URLS.length - NUM_KEYS];
query.setStartKey(startKey);
@@ -831,7 +832,7 @@ public class DataStoreTestUtil {
WebPage page = store.newPersistent();
Metadata metadata = new Metadata();
metadata.setVersion(1);
- metadata.putToData(new Utf8("foo"), new Utf8("baz"));
+ metadata.getData().put(new Utf8("foo"), new Utf8("baz"));
page.setMetadata(metadata);
page.setUrl(new Utf8(url));
@@ -842,7 +843,7 @@ public class DataStoreTestUtil {
page = store.get(revUrl);
metadata = page.getMetadata();
assertNotNull(metadata);
- assertEquals(1, metadata.getVersion());
+ assertEquals(1, metadata.getVersion()); //.intValue()?
assertEquals(new Utf8("baz"), metadata.getData().get(new Utf8("foo")));
}
@@ -854,7 +855,7 @@ public class DataStoreTestUtil {
String[] tokens = {"example", "content", "in", "example.com"};
for(String token: tokens) {
- page.addToParsedContent(new Utf8(token));
+ page.getParsedContent().add(new Utf8(token));
}
store.put("com.example/http", page);
@@ -885,9 +886,9 @@ public class DataStoreTestUtil {
WebPage page = store.newPersistent();
page.setUrl(new Utf8("http://example.com"));
- page.putToOutlinks(new Utf8("http://example2.com"), new Utf8("anchor2"));
- page.putToOutlinks(new Utf8("http://example3.com"), new Utf8("anchor3"));
- page.putToOutlinks(new Utf8("http://example3.com"), new Utf8("anchor4"));
+ 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"));
store.put("com.example/http", page);
store.close();
}
Modified: gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/util/TestIOUtils.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/util/TestIOUtils.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/util/TestIOUtils.java (original)
+++ gora/branches/GORA_94/gora-core/src/test/java/org/apache/gora/util/TestIOUtils.java Sat Aug 24 00:27:39 2013
@@ -27,11 +27,10 @@ import java.io.EOFException;
import java.io.IOException;
import java.util.Arrays;
-import org.apache.avro.ipc.ByteBufferInputStream;
-import org.apache.avro.ipc.ByteBufferOutputStream;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.apache.avro.util.ByteBufferInputStream;
+import org.apache.avro.util.ByteBufferOutputStream;
import org.apache.gora.mapreduce.GoraMapReduceUtils;
+import org.apache.gora.util.IOUtils;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.io.DataInputBuffer;
import org.apache.hadoop.io.DataOutputBuffer;
@@ -39,6 +38,8 @@ import org.apache.hadoop.io.Text;
import org.apache.hadoop.io.Writable;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
/**
* Test case for {@link IOUtils} class.
Modified: gora/branches/GORA_94/gora-tutorial/pom.xml
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-tutorial/pom.xml?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-tutorial/pom.xml (original)
+++ gora/branches/GORA_94/gora-tutorial/pom.xml Sat Aug 24 00:27:39 2013
@@ -128,7 +128,7 @@
</dependency>
<dependency>
- <groupId>org.apache.hadoop</groupId>
+ <groupId>org.apache.avro</groupId>
<artifactId>avro</artifactId>
</dependency>
Modified: gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/LogAnalytics.java
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/LogAnalytics.java?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/LogAnalytics.java (original)
+++ gora/branches/GORA_94/gora-tutorial/src/main/java/org/apache/gora/tutorial/log/LogAnalytics.java Sat Aug 24 00:27:39 2013
@@ -77,7 +77,7 @@ public class LogAnalytics extends Config
protected void map(Long key, Pageview pageview, Context context)
throws IOException ,InterruptedException {
- Utf8 url = pageview.getUrl();
+ CharSequence url = pageview.getUrl();
long day = getDay(pageview.getTimestamp());
tuple.getKey().set(url.toString());
Modified: gora/branches/GORA_94/pom.xml
URL: http://svn.apache.org/viewvc/gora/branches/GORA_94/pom.xml?rev=1517093&r1=1517092&r2=1517093&view=diff
==============================================================================
--- gora/branches/GORA_94/pom.xml (original)
+++ gora/branches/GORA_94/pom.xml Sat Aug 24 00:27:39 2013
@@ -571,12 +571,14 @@
</profiles>
<modules>
+ <module>gora-compiler</module>
+ <module>gora-compiler-cli</module>
<module>gora-core</module>
- <module>gora-hbase</module>
- <module>gora-accumulo</module>
- <module>gora-cassandra</module>
+ <!--module>gora-hbase</module>
+ <module>gora-accumulo</module-->
+ <!--module>gora-cassandra</module-->
<!-- module>gora-solr</module-->
- <module>gora-dynamodb</module>
+ <!--module>gora-dynamodb</module-->
<!--module>gora-sql</module-->
<module>gora-tutorial</module>
<module>sources-dist</module>
@@ -591,7 +593,7 @@
<hadoop.version>1.0.1</hadoop.version>
<hadoop.test.version>1.0.1</hadoop.test.version>
<hbase.version>0.90.4</hbase.version>
- <avro.version>1.3.3</avro.version>
+ <avro.version>1.7.4</avro.version>
<cxf-rt-frontend-jaxrs.version>2.5.2</cxf-rt-frontend-jaxrs.version>
<!-- Amazon Dependencies -->
<amazon.version>1.3.12</amazon.version>
@@ -618,7 +620,7 @@
<mysql.version>5.1.18</mysql.version>
<xerces.version>2.9.1</xerces.version>
<!-- Logging Dependencies -->
- <slf4j.version>1.6.1</slf4j.version>
+ <slf4j.version>1.5.8</slf4j.version>
<log4j.version>1.2.16</log4j.version>
<!-- Testing Dependencies -->
@@ -627,7 +629,8 @@
<!-- Maven Plugin Dependencies -->
<maven-compiler-plugin.version>2.3.2</maven-compiler-plugin.version>
<maven-resources-plugin.version>2.5</maven-resources-plugin.version>
- <maven-jar-plugin.version>2.4</maven-jar-plugin.version>
+ <!-- pegged at 2.3.2 for eclipse users, see https://github.com/sonatype/m2eclipse-extras/issues/10 -->
+ <maven-jar-plugin.version>2.3.2</maven-jar-plugin.version>
<maven-dependency-plugin.version>2.4</maven-dependency-plugin.version>
<build-helper-maven-plugin.version>1.7</build-helper-maven-plugin.version>
<maven-surfire-plugin.version>2.12</maven-surfire-plugin.version>
@@ -702,6 +705,30 @@
<version>${project.version}</version>
<type>test-jar</type>
</dependency>
+
+ <dependency>
+ <groupId>org.apache.gora</groupId>
+ <artifactId>gora-compiler</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <!--dependency>
+ <groupId>org.apache.gora</groupId>
+ <artifactId>gora-core</artifactId>
+ <version>${project.version}</version>
+ <type>test-jar</type>
+ </dependency-->
+
+ <dependency>
+ <groupId>org.apache.gora</groupId>
+ <artifactId>gora-compiler-cli</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <!--dependency>
+ <groupId>org.apache.gora</groupId>
+ <artifactId>gora-core</artifactId>
+ <version>${project.version}</version>
+ <type>test-jar</type>
+ </dependency-->
<dependency>
<groupId>org.apache.gora</groupId>
@@ -786,7 +813,7 @@
</dependency>
<dependency>
- <groupId>org.apache.hadoop</groupId>
+ <groupId>org.apache.avro</groupId>
<artifactId>avro</artifactId>
<version>${avro.version}</version>
<exclusions>
@@ -796,17 +823,53 @@
</exclusion>
</exclusions>
</dependency>
+
+ <dependency>
+ <groupId>org.apache.avro</groupId>
+ <artifactId>avro-compiler</artifactId>
+ <version>${avro.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.avro</groupId>
+ <artifactId>avro-mapred</artifactId>
+ <version>${avro.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase</artifactId>
<version>${hbase.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>avro</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase</artifactId>
<version>${hbase.version}</version>
<type>test-jar</type>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>avro</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<!-- Cassandra Dependencies -->
@@ -1252,7 +1315,7 @@
<artifactId>junit</artifactId>
<version>${junit.version}</version>
</dependency>
-
+
</dependencies>
</dependencyManagement>