package org.apache.pig.builtin; import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.apache.hadoop.fs.Path; import org.apache.hadoop.mapreduce.InputFormat; import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.OutputFormat; import org.apache.hadoop.mapreduce.RecordReader; import org.apache.hadoop.mapreduce.RecordWriter; import org.apache.pig.Expression; import org.apache.pig.FileInputLoadFunc; import org.apache.pig.LoadMetadata; import org.apache.pig.LoadPushDown; import org.apache.pig.ResourceSchema; import org.apache.pig.ResourceStatistics; import org.apache.pig.StoreFuncInterface; import org.apache.pig.StoreMetadata; import org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigSplit; import org.apache.pig.backend.hadoop.executionengine.physicalLayer.plans.PhysicalPlan; import org.apache.pig.data.Tuple; import org.apache.pig.data.TupleFactory; import org.apache.pig.impl.PigContext; import org.apache.pig.impl.logicalLayer.FrontendException; import org.apache.spark.api.java.function.Function; import org.apache.spark.streaming.api.java.JavaDStream; import org.apache.spark.streaming.api.java.JavaStreamingContext; import twitter4j.Status; public class TwitterStorage extends FileInputLoadFunc implements StoreFuncInterface, LoadPushDown, LoadMetadata, StoreMetadata{ public TwitterStorage(){ System.out.println("======TwitterStorage======"); } @Override public void storeStatistics(ResourceStatistics stats, String location, Job job) throws IOException { // TODO Auto-generated method stub } @Override public void storeSchema(ResourceSchema schema, String location, Job job) throws IOException { // TODO Auto-generated method stub } @Override public ResourceSchema getSchema(String location, Job job) throws IOException { // TODO Auto-generated method stub return null; } @Override public ResourceStatistics getStatistics(String location, Job job) throws IOException { // TODO Auto-generated method stub return null; } @Override public String[] getPartitionKeys(String location, Job job) throws IOException { // TODO Auto-generated method stub return null; } @Override public void setPartitionFilter(Expression partitionFilter) throws IOException { // TODO Auto-generated method stub } @Override public List<OperatorSet> getFeatures() { // TODO Auto-generated method stub return null; } @Override public RequiredFieldResponse pushProjection( RequiredFieldList requiredFieldList) throws FrontendException { // TODO Auto-generated method stub return null; } @Override public String relToAbsPathForStoreLocation(String location, Path curDir) throws IOException { // TODO Auto-generated method stub return null; } @Override public OutputFormat getOutputFormat() throws IOException { // TODO Auto-generated method stub return null; } @Override public void setStoreLocation(String location, Job job) throws IOException { // TODO Auto-generated method stub } @Override public void checkSchema(ResourceSchema s) throws IOException { // TODO Auto-generated method stub } @Override public void prepareToWrite(RecordWriter writer) throws IOException { // TODO Auto-generated method stub } @Override public void putNext(Tuple t) throws IOException { // TODO Auto-generated method stub } @Override public void setStoreFuncUDFContextSignature(String signature) { // TODO Auto-generated method stub } @Override public void cleanupOnFailure(String location, Job job) throws IOException { // TODO Auto-generated method stub } @Override public void cleanupOnSuccess(String location, Job job) throws IOException { // TODO Auto-generated method stub } @Override public void setLocation(String location, Job job) throws IOException { // TODO Auto-generated method stub } @Override public InputFormat getInputFormat() throws IOException { // TODO Auto-generated method stub return null; } @Override public void prepareToRead(RecordReader reader, PigSplit split) throws IOException { // TODO Auto-generated method stub } @Override public Tuple getNext() throws IOException { // TODO Auto-generated method stub System.out.println("======TwitterStorage====="); ArrayList<String> al = new ArrayList<String>(); al.add("##########Lulz"); TupleFactory mTupleFactory = TupleFactory.getInstance(); Tuple t = mTupleFactory.newTupleNoCopy(al); return t; } }