public class RunDatabaseDAO extends JDOSupport<RunConnection>
JDOSupport.PersistenceManagerBuilder, JDOSupport.TransactionAspect, JDOSupport.WithinSingleTransaction
Constructor and Description |
---|
RunDatabaseDAO() |
Modifier and Type | Method and Description |
---|---|
int |
countRuns() |
List<String> |
doClean()
Remove all workflow runs that have expired.
|
void |
flushToDisk(RemoteRunDelegate run)
Ensure that the given workflow run is synchronized with the database.
|
TavernaRun |
get(String name)
Obtain a workflow run handle.
|
List<RemoteRunDelegate> |
getPotentiallyNotifiable() |
String |
getSecurityToken(String name) |
List<String> |
listRunNames() |
Map<String,TavernaRun> |
listRuns(UsernamePrincipal user,
Policy p)
Get the runs that a user can read things from.
|
void |
markFinished(Set<String> terminated) |
void |
persistRun(RemoteRunDelegate rrd)
Make a workflow run persistent.
|
RemoteRunDelegate |
pickArbitraryRun() |
void |
setFacade(RunDatabase facade) |
boolean |
unpersistRun(String name)
Stop a workflow run from being persistent.
|
delete, detach, getById, isPersistent, namedQuery, persist, query, setPersistenceManagerBuilder
public void setFacade(RunDatabase facade)
@JDOSupport.WithinSingleTransaction public int countRuns()
@Nullable @JDOSupport.WithinSingleTransaction public String getSecurityToken(@Nonnull String name)
@Nullable @JDOSupport.WithinSingleTransaction public TavernaRun get(String name)
name
- The identifier of the run.@Nonnull @JDOSupport.WithinSingleTransaction public Map<String,TavernaRun> listRuns(UsernamePrincipal user, Policy p)
user
- Who is asking?p
- The policy that determines what they can see.@Nonnull @JDOSupport.WithinSingleTransaction public List<String> listRunNames()
@Nullable @JDOSupport.WithinSingleTransaction public RemoteRunDelegate pickArbitraryRun() throws Exception
Exception
- If anything goes wrong.@JDOSupport.WithinSingleTransaction public void persistRun(@Nonnull RemoteRunDelegate rrd) throws IOException
rrd
- The workflow run to persist.IOException
- If anything goes wrong with serialisation of the run.@JDOSupport.WithinSingleTransaction public boolean unpersistRun(String name)
name
- The ID of the run.@JDOSupport.WithinSingleTransaction public void flushToDisk(@Nonnull RemoteRunDelegate run) throws IOException
run
- The run to synchronise.IOException
- If serialization of anything fails.@Nonnull @CallTimeLogger.PerfLogged @JDOSupport.WithinSingleTransaction public List<String> doClean()
@Nonnull @CallTimeLogger.PerfLogged @JDOSupport.WithinSingleTransaction public List<RemoteRunDelegate> getPotentiallyNotifiable()
@CallTimeLogger.PerfLogged @JDOSupport.WithinSingleTransaction public void markFinished(@Nonnull Set<String> terminated)
Copyright © 2015–2018 The Apache Software Foundation. All rights reserved.