1 package fr.in2p3.jsaga.impl.resource;
2
3 import fr.in2p3.jsaga.engine.factories.ResourceAdaptorFactory;
4 import fr.in2p3.jsaga.impl.task.AbstractThreadedTask;
5 import org.ogf.saga.error.*;
6 import org.ogf.saga.resource.manager.ResourceManager;
7 import org.ogf.saga.resource.ResourceFactory;
8 import org.ogf.saga.session.Session;
9 import org.ogf.saga.task.Task;
10 import org.ogf.saga.task.TaskMode;
11 import org.ogf.saga.url.URL;
12
13
14
15
16
17 public abstract class AbstractAsyncResourceFactoryImpl extends AbstractSyncResourceFactoryImpl {
18
19 public AbstractAsyncResourceFactoryImpl(ResourceAdaptorFactory adaptorFactory) {
20 super(adaptorFactory);
21 }
22
23 protected Task<ResourceFactory, ResourceManager> doCreateResourceManager(TaskMode mode, final Session session, final URL rm) throws NotImplementedException {
24 return new AbstractThreadedTask<ResourceFactory,ResourceManager>(mode) {
25 public ResourceManager invoke() throws NotImplementedException, IncorrectURLException, AuthenticationFailedException, AuthorizationFailedException, PermissionDeniedException, BadParameterException, IncorrectStateException, AlreadyExistsException, DoesNotExistException, TimeoutException, NoSuccessException {
26 return AbstractAsyncResourceFactoryImpl.super.doCreateManagerSync(session, rm);
27 }
28 };
29 }
30 }