ingo@905: package de.intevation.flys.client.server; ingo@905: ingo@905: import de.intevation.flys.client.shared.exceptions.ServerException; ingo@905: import de.intevation.flys.client.shared.model.Artifact; ingo@905: import de.intevation.flys.client.shared.model.Collection; ingo@905: import de.intevation.flys.client.shared.model.Recommendation; ingo@905: ingo@905: import de.intevation.flys.client.client.services.LoadArtifactService; ingo@905: ingo@905: /** ingo@905: * This service creates a new Artifact based on a given Recommendation and puts ingo@905: * this new artifact into a specified Collection. ingo@905: * ingo@905: * @author Ingo Weinzierl ingo@905: */ ingo@905: public class LoadArtifactServiceImpl ingo@905: extends ArtifactServiceImpl ingo@905: implements LoadArtifactService ingo@905: { ingo@905: public static final String ERROR_LOAD_ARTIFACT = "error_load_artifact"; ingo@905: ingo@905: public Artifact load( ingo@905: Collection parent, ingo@905: Recommendation recom, ingo@905: String factory, ingo@905: String url, ingo@905: String locale ingo@905: ) ingo@905: throws ServerException { ingo@905: System.out.println( ingo@905: "LoadArtifactServiceImpl.load: " + recom.getMasterArtifact()); ingo@905: ingo@905: // 1) Clone the Artifact specified in >>recom<< ingo@905: Artifact clone = ArtifactHelper.createArtifact( ingo@905: url, locale, factory, recom); ingo@905: ingo@905: if (clone != null) { ingo@905: System.out.println("Successfully create Artifact Clone. Add now!"); ingo@905: Collection c = CollectionHelper.addArtifact( ingo@905: parent, clone, url, locale); ingo@905: ingo@905: if (c != null) { ingo@905: System.out.println("Successfully added Clone to Collection."); ingo@905: ingo@905: return clone; ingo@905: } ingo@905: } ingo@905: ingo@905: throw new ServerException(ERROR_LOAD_ARTIFACT); ingo@905: } ingo@905: } ingo@905: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :