All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.deepamehta.topicmaps.ClusterCoords Maven / Gradle / Ivy

package de.deepamehta.topicmaps;

import org.codehaus.jettison.json.JSONArray;
import org.codehaus.jettison.json.JSONObject;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.logging.Logger;



public class ClusterCoords implements Iterable {

    // ---------------------------------------------------------------------------------------------- Instance Variables

    private List entries = new ArrayList();

    private Logger logger = Logger.getLogger(getClass().getName());

    // ---------------------------------------------------------------------------------------------------- Constructors

    public ClusterCoords(JSONArray entries) {
        try {
            for (int i = 0; i < entries.length(); i++) {
                JSONObject entry = entries.getJSONObject(i);
                this.entries.add(new Entry(
                    entry.getLong("topic_id"),
                    entry.getInt("x"),
                    entry.getInt("y")
                ));
            }
        } catch (Exception e) {
            throw new RuntimeException("Parsing ClusterCoords failed (JSONArray=" + entries + ")", e);
        }
    }

    // -------------------------------------------------------------------------------------------------- Public Methods

    @Override
    public Iterator iterator() {
        return entries.iterator();
    }

    public class Entry {

        public long topicId;
        public int x;
        public int y;

        private Entry(long topicId, int x, int y) {
            this.topicId = topicId;
            this.x = x;
            this.y = y;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy