Search in sources :

Example 1 with TimeRangeFacet

use of com.google.refine.browsing.facets.TimeRangeFacet in project OpenRefine by OpenRefine.

the class TimeRangeFacetTests method serializeTimeRangeFacet.

@Test
public void serializeTimeRangeFacet() throws JsonParseException, JsonMappingException, IOException {
    Project project = createCSVProject("my column\n" + "placeholder\n" + "nontime\n" + "placeholder\n" + "placeholder\n");
    project.rows.get(0).cells.set(0, new Cell(OffsetDateTime.parse("2018-01-03T08:09:10Z"), null));
    project.rows.get(2).cells.set(0, new Cell(OffsetDateTime.parse("2008-01-03T03:04:05Z"), null));
    project.rows.get(3).cells.set(0, new Cell(OffsetDateTime.parse("2012-04-05T02:00:01Z"), null));
    Engine engine = new Engine(project);
    TimeRangeFacetConfig config = ParsingUtilities.mapper.readValue(configJson, TimeRangeFacetConfig.class);
    TimeRangeFacet facet = config.apply(project);
    facet.computeChoices(project, engine.getAllFilteredRows());
    TestUtils.isSerializedTo(facet, facetJson);
}
Also used : Project(com.google.refine.model.Project) Cell(com.google.refine.model.Cell) TimeRangeFacet(com.google.refine.browsing.facets.TimeRangeFacet) Engine(com.google.refine.browsing.Engine) TimeRangeFacetConfig(com.google.refine.browsing.facets.TimeRangeFacet.TimeRangeFacetConfig) RefineTest(com.google.refine.RefineTest) Test(org.testng.annotations.Test)

Example 2 with TimeRangeFacet

use of com.google.refine.browsing.facets.TimeRangeFacet in project OpenRefine by OpenRefine.

the class Engine method initializeFromJSON.

public void initializeFromJSON(JSONObject o) throws JSONException {
    if (o == null) {
        return;
    }
    if (o.has("facets") && !o.isNull("facets")) {
        JSONArray a = o.getJSONArray("facets");
        int length = a.length();
        for (int i = 0; i < length; i++) {
            JSONObject fo = a.getJSONObject(i);
            String type = fo.has("type") ? fo.getString("type") : "list";
            Facet facet = null;
            if ("list".equals(type)) {
                facet = new ListFacet();
            } else if ("range".equals(type)) {
                facet = new RangeFacet();
            } else if ("timerange".equals(type)) {
                facet = new TimeRangeFacet();
            } else if ("scatterplot".equals(type)) {
                facet = new ScatterplotFacet();
            } else if ("text".equals(type)) {
                facet = new TextSearchFacet();
            }
            if (facet != null) {
                facet.initializeFromJSON(_project, fo);
                _facets.add(facet);
            }
        }
    }
    // for backward compatibility
    if (o.has(INCLUDE_DEPENDENT) && !o.isNull(INCLUDE_DEPENDENT)) {
        _mode = o.getBoolean(INCLUDE_DEPENDENT) ? Mode.RecordBased : Mode.RowBased;
    }
    if (o.has(MODE) && !o.isNull(MODE)) {
        _mode = MODE_ROW_BASED.equals(o.getString(MODE)) ? Mode.RowBased : Mode.RecordBased;
    }
}
Also used : ScatterplotFacet(com.google.refine.browsing.facets.ScatterplotFacet) TimeRangeFacet(com.google.refine.browsing.facets.TimeRangeFacet) RangeFacet(com.google.refine.browsing.facets.RangeFacet) JSONObject(org.json.JSONObject) TextSearchFacet(com.google.refine.browsing.facets.TextSearchFacet) JSONArray(org.json.JSONArray) ListFacet(com.google.refine.browsing.facets.ListFacet) TimeRangeFacet(com.google.refine.browsing.facets.TimeRangeFacet) Facet(com.google.refine.browsing.facets.Facet) ScatterplotFacet(com.google.refine.browsing.facets.ScatterplotFacet) ListFacet(com.google.refine.browsing.facets.ListFacet) TimeRangeFacet(com.google.refine.browsing.facets.TimeRangeFacet) TextSearchFacet(com.google.refine.browsing.facets.TextSearchFacet) RangeFacet(com.google.refine.browsing.facets.RangeFacet)

Aggregations

TimeRangeFacet (com.google.refine.browsing.facets.TimeRangeFacet)2 RefineTest (com.google.refine.RefineTest)1 Engine (com.google.refine.browsing.Engine)1 Facet (com.google.refine.browsing.facets.Facet)1 ListFacet (com.google.refine.browsing.facets.ListFacet)1 RangeFacet (com.google.refine.browsing.facets.RangeFacet)1 ScatterplotFacet (com.google.refine.browsing.facets.ScatterplotFacet)1 TextSearchFacet (com.google.refine.browsing.facets.TextSearchFacet)1 TimeRangeFacetConfig (com.google.refine.browsing.facets.TimeRangeFacet.TimeRangeFacetConfig)1 Cell (com.google.refine.model.Cell)1 Project (com.google.refine.model.Project)1 JSONArray (org.json.JSONArray)1 JSONObject (org.json.JSONObject)1 Test (org.testng.annotations.Test)1