From cb491e82b5ce3dcb7e3c41973a46cb7dcbaa9008 Mon Sep 17 00:00:00 2001 From: "github-classroom[bot]" <66690702+github-classroom[bot]@users.noreply.github.com> Date: Sun, 10 Dec 2023 19:07:21 +0000 Subject: Initial commit --- InvertedIndex.java | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 InvertedIndex.java (limited to 'InvertedIndex.java') diff --git a/InvertedIndex.java b/InvertedIndex.java new file mode 100644 index 0000000..bc75ba6 --- /dev/null +++ b/InvertedIndex.java @@ -0,0 +1,56 @@ +import java.util.LinkedList; +import java.util.List; +import java.util.Map; + +import mapreduce.MapReduce; + +public class InvertedIndex { + + public Map> run(List filenames) { + List inputs = new LinkedList<>(); + for (String filename : filenames) { + inputs.add(new Document(filename, FileParser.parse(filename))); + } + // TODO: instantiate a MapReduce object with correct input, key, value, and output types + + // TODO: set the mapper and reducer suppliers, and set the inputs + + // TODO: execute the MapReduce object and return the result + + throw new UnsupportedOperationException("InvertedIndex.run() not implemented yet."); + } + + class Document { + + String name; + List words; + + public Document(String name, List words) { + this.name = name; + this.words = words; + } + + } + + class Mapper + extends mapreduce.Mapper { + + @Override + public Map compute() { + // TODO: implement the Map function for inverted index + throw new UnsupportedOperationException("InvertedIndex map function not implemented yet."); + } + + } + + class Reducer + extends mapreduce.Reducer> { + + @Override + public List compute() { + // TODO: implement the Reduce function for inverted index + throw new UnsupportedOperationException("InvertedIndex reduce function not implemented yet."); + } + } + +} -- cgit v1.2.3-70-g09d2