Yes there is indeed internal API to do this. The following example shows how to read process (IProcess) from a project and use the process model API to play with instances of RequestStart.

package com.axonivy.demo;
import java.util.List;
import java.util.Set;
import ch.ivyteam.ivy.environment.EnvironmentNotAvailableException;
import ch.ivyteam.ivy.environment.Ivy;
import ch.ivyteam.ivy.persistence.PersistencyException;
import ch.ivyteam.ivy.process.IProcess;
import ch.ivyteam.ivy.process.model.element.event.start.RequestStart;
import ch.ivyteam.ivy.resource.datamodel.ResourceDataModelException;
public class Startables {
public static void logStarts() throws Exception
{
Set<IProcess> allProcessInMyProject = Ivy.request().getProject().getProcesses(null);
for(IProcess proc : allProcessInMyProject)
{
List<RequestStart> starts = proc.getModel().search().type(RequestStart.class)
.and(start -> start.isStartByHttpRequestAllowed())
.findDeep();
starts.stream().forEach(Startables::log);
}
}
private static void log(RequestStart start)
{
Ivy.log().info(start.getRequestPath().getLinkName()+" /signature="+start.getSignature().toSignatureString());
}
}
answered
17.09.2019 at 10:18
Reguel Werme... ♦♦
9.4k●3●19●58
accept rate:
70%