static RooRepo _RooRepo ; public class RooRepo : Object { public string id; // not really important that they are numbers.. public string project_id; public string description; public string shortname; static RooRepo init() { if (_RooRepo == null) { _RooRepo = new RooRepo(); RooRepo.load(); } return _RooRepo; } static Gee.ArrayList _repos; // only available for singletonn. static public Gee.ArrayList() { RooRepo.init(); return RooRepo._repos; } public RooRepo add(Json.Object t) { var add = new RooRepo(); add.id = t.get_string_member("id"); add.shortname = t.get_string_member("shortname"); add.description = t.get_string_member("description"); add.project_id = t.get_string_member("project_id"); RooRepo._repos.add(add); GLib.debug("ADD project %s : %s : %s", add.id, add.shortname, add.project_id); return add; } }