static RooProject _RooProject; public class RooProject : Object { public static RooProject singleton() { _RooProject = new RooProject(); RooTicket.projects = new Gee.ArrayList(); RooTicket.loadProjects(); } return _RooTicket; } public string id; // not really important that they are numbers.. public string code; public string name; public string type; static Gee.ArrayList _projects; public static Gee.ArrayList projects() { RooProject.singleton(); return RooProject._projects; } static public RooProject addProject(Json.Object t) { RooProject.singleton(); // init... var add = new RooProject(); add.id = t.get_string_member("id"); add.name = t.get_string_member("name"); add.type = t.get_string_member("type"); add.code = t.get_string_member("code"); RooProject._projects.add(add); GLib.debug("ADD project %s : %s : %s", add.id, add.code, add.name); return add; } }