@@ -0,0 +1,1354 @@
+package org.intermine.web.logic.widget;%0A%0Aimport org.intermine.api.profile.InterMineBag;%0Aimport org.intermine.objectstore.ObjectStore;%0Aimport org.intermine.objectstore.query.Query;%0Aimport org.intermine.objectstore.query.Results;%0A%0Apublic class GraphWidgetLoader %7B%0A%0A%0A%0A    private String categoryPath;%0A    private String countPath;%0A    private String bagType;%0A    private String bagPath;%0A    private String series1;%0A    private String series2;%0A    private ObjectStore os;%0A%0A    // TODO the parameters need to be updated%0A    public void GraphWidgetLoader(ObjectStore os, String categoryPath, String countPath,%0A            String bagType, String bagPath, String series1, String series2) %7B%0A        this.os = os;%0A        this.categoryPath = categoryPath;%0A        this.countPath = countPath;%0A        this.bagType = bagType;%0A        this.bagPath = bagPath;%0A        this.series1 = series1;%0A        this.series2 = series2;%0A    %7D%0A%0A    public Results getResultTable(InterMineBag bag) %7B%0A        // TODO check the bag type%0A%0A        Query q = makeQuery(bag);%0A        return os.execute(q);%0A    %7D%0A%0A    public Query makeQuery(InterMineBag bag) %7B%0A        Query q = new Query();%0A%0A        // Create a Path object for each path in configuration%0A%0A        // Create QueryClasses%0A%0A        // Add ContainsConstraints%0A%0A        // Add attributes to select%0A%0A%0A        return q;%0A    %7D%0A%0A%7D%0A

Add skeleton GraphWidget query generator.