Search in sources :

Example 1 with ProjectImpl

use of org.olat.course.nodes.projectbroker.datamodel.ProjectImpl in project openolat by klemens.

the class ProjectBrokerManagerImpl method createAndSaveProjectFor.

public Project createAndSaveProjectFor(String title, String description, final Long projectBrokerId, BusinessGroup projectGroup) {
    OLATResourceable projectBrokerOres = OresHelper.createOLATResourceableInstance(this.getClass(), projectBrokerId);
    final Project project = new ProjectImpl(title, description, projectGroup, getProjectBroker(projectBrokerId));
    CoordinatorManager.getInstance().getCoordinator().getSyncer().doInSync(projectBrokerOres, new SyncerExecutor() {

        public void execute() {
            dbInstance.saveObject(project);
            ProjectBroker projectBroker = getOrLoadProjectBoker(projectBrokerId);
            if (!projectBroker.getProjects().contains(project)) {
                projectBroker.getProjects().add(project);
            }
            projectCache.update(projectBrokerId.toString(), projectBroker);
        }
    });
    return project;
}
Also used : Project(org.olat.course.nodes.projectbroker.datamodel.Project) ProjectBroker(org.olat.course.nodes.projectbroker.datamodel.ProjectBroker) OLATResourceable(org.olat.core.id.OLATResourceable) ProjectImpl(org.olat.course.nodes.projectbroker.datamodel.ProjectImpl) SyncerExecutor(org.olat.core.util.coordinate.SyncerExecutor)

Example 2 with ProjectImpl

use of org.olat.course.nodes.projectbroker.datamodel.ProjectImpl in project OpenOLAT by OpenOLAT.

the class ProjectBrokerManagerImpl method createAndSaveProjectFor.

public Project createAndSaveProjectFor(String title, String description, final Long projectBrokerId, BusinessGroup projectGroup) {
    OLATResourceable projectBrokerOres = OresHelper.createOLATResourceableInstance(this.getClass(), projectBrokerId);
    final Project project = new ProjectImpl(title, description, projectGroup, getProjectBroker(projectBrokerId));
    CoordinatorManager.getInstance().getCoordinator().getSyncer().doInSync(projectBrokerOres, new SyncerExecutor() {

        public void execute() {
            dbInstance.saveObject(project);
            ProjectBroker projectBroker = getOrLoadProjectBoker(projectBrokerId);
            if (!projectBroker.getProjects().contains(project)) {
                projectBroker.getProjects().add(project);
            }
            projectCache.update(projectBrokerId.toString(), projectBroker);
        }
    });
    return project;
}
Also used : Project(org.olat.course.nodes.projectbroker.datamodel.Project) ProjectBroker(org.olat.course.nodes.projectbroker.datamodel.ProjectBroker) OLATResourceable(org.olat.core.id.OLATResourceable) ProjectImpl(org.olat.course.nodes.projectbroker.datamodel.ProjectImpl) SyncerExecutor(org.olat.core.util.coordinate.SyncerExecutor)

Aggregations

OLATResourceable (org.olat.core.id.OLATResourceable)2 SyncerExecutor (org.olat.core.util.coordinate.SyncerExecutor)2 Project (org.olat.course.nodes.projectbroker.datamodel.Project)2 ProjectBroker (org.olat.course.nodes.projectbroker.datamodel.ProjectBroker)2 ProjectImpl (org.olat.course.nodes.projectbroker.datamodel.ProjectImpl)2