- public RooProject addProject(Json.Object t)
- {
- 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");
- this.projects.add(add);
- GLib.debug("ADD project %s : %s : %s", add.id, add.code, add.name);
- return add;
- }
-
- public RooRepo addRepo(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");
- this.repos.add(add);
- GLib.debug("ADD project %s : %s : %s", add.id, add.shortname, add.project_id);
- return add;
- }
-
- public RooProject? getProjectByRepo(GitRepo repo)
- {
- var rt = RooTicket.singleton();
-
- if (rt.repos.size < 1) {
- rt.loadRepos();
- }
- if (rt.projects.size < 1) {
- rt.loadProjects();
- }
-
- var pid = "";
- foreach(var roo_repo in rt.repos) {
- if (roo_repo.shortname == repo.name) {
- pid = roo_repo.project_id;
- break;
- }
- }
- if (pid == "") {
- GLib.debug("getProjectByRepo: repo has no project");
- return null;
- }
- // get project by id...
- foreach(var roo_project in rt.projects) {
- if (roo_project.id == pid) {
- GLib.debug("getProjectByRepo: project_id = %s", pid);
- return roo_project;
- }
- }
- GLib.debug("getProjectByRepo: can not find project");
- return null;
-
- }