public class org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl extends java.lang.Object implements org.apache.jackrabbit.vault.rcp.RcpTaskManager
{
private static final java.lang.String TASKS_DATA_FILE_NAME;
private static final java.lang.String PROP_TASKS_SERIALIZATION;
private static final java.lang.String PID;
private static final org.slf4j.Logger log;
java.util.SortedMap tasks;
private java.io.File dataFile;
private final com.fasterxml.jackson.databind.ObjectMapper mapper;
private org.osgi.service.cm.Configuration configuration;
org.osgi.service.cm.ConfigurationAdmin configurationAdmin;
private java.lang.String serializedTasks;
void activate(org.osgi.framework.BundleContext, java.util.Map) throws java.io.IOException
{
com.fasterxml.jackson.databind.MapperFeature v;
com.fasterxml.jackson.databind.module.SimpleModule v;
org.apache.jackrabbit.vault.rcp.impl.WorkspaceFilterDeserializer v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
org.osgi.service.cm.Configuration v;
org.apache.jackrabbit.vault.rcp.impl.DefaultWorkspaceFilterSerializer v;
java.util.Map v;
java.lang.String v;
org.slf4j.Logger v;
com.fasterxml.jackson.databind.ObjectMapper v, v, v, v, v, v;
java.io.IOException v;
java.io.File v, v;
org.osgi.framework.BundleContext v;
java.util.TreeMap v;
org.osgi.service.cm.ConfigurationAdmin v;
java.lang.Object v;
java.util.SortedMap v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: org.osgi.framework.BundleContext;
v := @parameter: java.util.Map;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper>;
v = <com.fasterxml.jackson.databind.MapperFeature: com.fasterxml.jackson.databind.MapperFeature PROPAGATE_TRANSIENT_MARKER>;
virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: com.fasterxml.jackson.databind.ObjectMapper configure(com.fasterxml.jackson.databind.MapperFeature,boolean)>(v, 1);
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper>;
virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: com.fasterxml.jackson.databind.ObjectMapper addMixIn(java.lang.Class,java.lang.Class)>(class "Lorg/apache/jackrabbit/vault/fs/api/RepositoryAddress;", class "Lorg/apache/jackrabbit/vault/rcp/impl/RepositoryAddressMixin;");
v = new com.fasterxml.jackson.databind.module.SimpleModule;
specialinvoke v.<com.fasterxml.jackson.databind.module.SimpleModule: void <init>()>();
v = new org.apache.jackrabbit.vault.rcp.impl.DefaultWorkspaceFilterSerializer;
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.DefaultWorkspaceFilterSerializer: void <init>()>();
virtualinvoke v.<com.fasterxml.jackson.databind.module.SimpleModule: com.fasterxml.jackson.databind.module.SimpleModule addSerializer(java.lang.Class,com.fasterxml.jackson.databind.JsonSerializer)>(class "Lorg/apache/jackrabbit/vault/fs/config/DefaultWorkspaceFilter;", v);
v = new org.apache.jackrabbit.vault.rcp.impl.WorkspaceFilterDeserializer;
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.WorkspaceFilterDeserializer: void <init>()>();
virtualinvoke v.<com.fasterxml.jackson.databind.module.SimpleModule: com.fasterxml.jackson.databind.module.SimpleModule addDeserializer(java.lang.Class,com.fasterxml.jackson.databind.JsonDeserializer)>(class "Lorg/apache/jackrabbit/vault/fs/api/WorkspaceFilter;", v);
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper>;
virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: com.fasterxml.jackson.databind.ObjectMapper registerModule(com.fasterxml.jackson.databind.Module)>(v);
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper>;
virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: com.fasterxml.jackson.databind.ObjectMapper addMixIn(java.lang.Class,java.lang.Class)>(class "Ljavax/jcr/SimpleCredentials;", class "Lorg/apache/jackrabbit/vault/rcp/impl/SimpleCredentialsMixin;");
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper>;
virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: com.fasterxml.jackson.databind.ObjectMapper addMixIn(java.lang.Class,java.lang.Class)>(class "Lorg/apache/jackrabbit/spi2dav/ConnectionOptions;", class "Lorg/apache/jackrabbit/vault/rcp/impl/ConnectionOptionsMixin;");
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper>;
virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: com.fasterxml.jackson.databind.ObjectMapper addMixIn(java.lang.Class,java.lang.Class)>(class "Lorg/apache/jackrabbit/vault/util/RepositoryCopier;", class "Lorg/apache/jackrabbit/vault/rcp/impl/RepositoryCopierMixin;");
v = interfaceinvoke v.<org.osgi.framework.BundleContext: java.io.File getDataFile(java.lang.String)>("tasks");
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.io.File dataFile> = v;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.osgi.service.cm.ConfigurationAdmin configurationAdmin>;
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.String PID>;
v = interfaceinvoke v.<org.osgi.service.cm.ConfigurationAdmin: org.osgi.service.cm.Configuration getConfiguration(java.lang.String)>(v);
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.osgi.service.cm.Configuration configuration> = v;
label:
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>("serialized.tasks.json");
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.io.File dataFile>;
v = specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap loadTasks(java.lang.String,java.io.File)>(v, v);
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks> = v;
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Could not restore previous tasks", v);
v = new java.util.TreeMap;
specialinvoke v.<java.util.TreeMap: void <init>()>();
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks> = v;
label:
return;
catch java.io.IOException from label to label with label;
}
public void <init>()
{
com.fasterxml.jackson.databind.ObjectMapper v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new com.fasterxml.jackson.databind.ObjectMapper;
specialinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: void <init>()>();
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper> = v;
return;
}
public void <init>(org.osgi.framework.BundleContext, org.osgi.service.cm.ConfigurationAdmin, java.util.Map) throws java.io.IOException
{
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.util.Map v;
com.fasterxml.jackson.databind.ObjectMapper v;
org.osgi.service.cm.ConfigurationAdmin v;
org.osgi.framework.BundleContext v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: org.osgi.framework.BundleContext;
v := @parameter: org.osgi.service.cm.ConfigurationAdmin;
v := @parameter: java.util.Map;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new com.fasterxml.jackson.databind.ObjectMapper;
specialinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: void <init>()>();
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper> = v;
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.osgi.service.cm.ConfigurationAdmin configurationAdmin> = v;
virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void activate(org.osgi.framework.BundleContext,java.util.Map)>(v, v);
return;
}
void deactivate() throws java.io.IOException, javax.jcr.RepositoryException
{
org.slf4j.Logger v, v;
java.util.Iterator v;
java.util.Collection v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.lang.Object v;
java.util.SortedMap v;
boolean v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("RcpTaskManager deactivated. Stopping running tasks...");
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = interfaceinvoke v.<java.util.SortedMap: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
interfaceinvoke v.<org.apache.jackrabbit.vault.rcp.RcpTask: boolean stop()>();
goto label;
label:
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void persistTasks()>();
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("RcpTaskManager deactivated. Stopping running tasks...done.");
return;
}
void modified(java.util.Map) throws java.io.IOException
{
org.slf4j.Logger v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
org.osgi.service.cm.Configuration v;
java.util.Map v;
org.osgi.service.cm.ConfigurationAdmin v;
java.lang.Object v, v;
java.lang.String v, v, v;
java.util.SortedMap v;
boolean v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: java.util.Map;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.osgi.service.cm.ConfigurationAdmin configurationAdmin>;
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.String PID>;
v = interfaceinvoke v.<org.osgi.service.cm.ConfigurationAdmin: org.osgi.service.cm.Configuration getConfiguration(java.lang.String)>(v);
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.osgi.service.cm.Configuration configuration> = v;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.String serializedTasks>;
if v == null goto label;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.String serializedTasks>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>("serialized.tasks.json");
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Detected external properties change");
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>("serialized.tasks.json");
v = specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap loadTasks(java.lang.String,java.io.File)>(v, null);
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks> = v;
label:
return;
}
static java.util.Map createMapFromDictionary(java.util.Dictionary)
{
java.util.Enumeration v;
java.util.function.Function v, v;
java.util.ArrayList v;
java.util.stream.Stream v;
java.lang.Object v;
java.util.stream.Collector v;
java.util.Dictionary v;
v := @parameter: java.util.Dictionary;
v = virtualinvoke v.<java.util.Dictionary: java.util.Enumeration keys()>();
v = staticinvoke <java.util.Collections: java.util.ArrayList list(java.util.Enumeration)>(v);
v = interfaceinvoke v.<java.util.List: java.util.stream.Stream stream()>();
v = staticinvoke <java.util.function.Function: java.util.function.Function identity()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl$get__3: java.util.function.Function bootstrap$(java.util.Dictionary)>(v);
v = staticinvoke <java.util.stream.Collectors: java.util.stream.Collector toMap(java.util.function.Function,java.util.function.Function)>(v, v);
v = interfaceinvoke v.<java.util.stream.Stream: java.lang.Object collect(java.util.stream.Collector)>(v);
return v;
}
private java.util.SortedMap loadTasks(java.lang.String, java.io.File) throws java.io.IOException
{
org.slf4j.Logger v, v, v;
com.fasterxml.jackson.databind.ObjectMapper v;
java.io.File v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.util.TreeMap v, v;
java.lang.Object v;
java.lang.String v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl$1 v;
boolean v, v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: java.lang.String;
v := @parameter: java.io.File;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("No previously persisted tasks found in OSGi configuation");
v = new java.util.TreeMap;
specialinvoke v.<java.util.TreeMap: void <init>()>();
return v;
label:
if v != null goto label;
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("No previously persisted tasks found in OSGi configuation");
v = new java.util.TreeMap;
specialinvoke v.<java.util.TreeMap: void <init>()>();
return v;
label:
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper>;
v = new org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl$1;
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl$1: void <init>(org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl)>(v);
v = virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: java.lang.Object readValue(java.lang.String,com.fasterxml.jackson.core.type.TypeReference)>(v, v);
virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void validateTasks(java.util.SortedMap)>(v);
if v == null goto label;
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v == 0 goto label;
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void loadTasksCredentials(java.util.Map,java.io.File)>(v, v);
goto label;
label:
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("No previously persisted task credentials found at \'{}\'", v);
label:
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.String serializedTasks> = v;
return v;
}
void validateTasks(java.util.SortedMap)
{
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.lang.String v, v, v;
boolean v, v;
java.util.Iterator v;
java.util.Set v;
java.lang.IllegalArgumentException v;
java.lang.Object v, v, v, v, v, v;
java.lang.ClassLoader v;
java.util.SortedMap v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: java.util.SortedMap;
v = interfaceinvoke v.<java.util.SortedMap: java.util.Set entrySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: java.lang.String getId()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: java.lang.String getId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Id of entry \u does not match its task id \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.ClassLoader getClassLoaderForRepositoryFactory()>();
virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: void setClassLoader(java.lang.ClassLoader)>(v);
goto label;
label:
return;
}
private void loadTasksCredentials(java.util.Map, java.io.File) throws java.io.IOException
{
java.lang.Throwable v;
java.util.Properties v;
java.util.Iterator v;
java.util.Collection v;
com.fasterxml.jackson.databind.ObjectMapper v;
java.io.FileInputStream v;
java.io.File v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.util.Map v;
java.lang.Object v, v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: java.util.Map;
v := @parameter: java.io.File;
v = new java.util.Properties;
specialinvoke v.<java.util.Properties: void <init>()>();
v = new java.io.FileInputStream;
specialinvoke v.<java.io.FileInputStream: void <init>(java.io.File)>(v);
label:
virtualinvoke v.<java.util.Properties: void load(java.io.InputStream)>(v);
label:
virtualinvoke v.<java.io.FileInputStream: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
v = interfaceinvoke v.<java.util.Map: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: java.lang.String getId()>();
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
if v == null goto label;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper>;
v = virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: java.lang.Object readValue(java.lang.String,java.lang.Class)>(v, class "Ljavax/jcr/SimpleCredentials;");
virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: void setSourceCredentials(javax.jcr.Credentials)>(v);
goto label;
label:
return;
catch java.lang.Throwable from label to label with label;
}
private void persistTasks()
{
java.lang.Throwable v;
java.lang.IllegalStateException v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
org.slf4j.Logger v;
org.osgi.service.cm.Configuration v;
java.io.File v;
java.util.Hashtable v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v = new java.util.Hashtable;
specialinvoke v.<java.util.Hashtable: void <init>()>();
label:
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.io.File dataFile>;
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void persistTasks(java.util.Dictionary,java.io.File)>(v, v);
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.osgi.service.cm.Configuration configuration>;
interfaceinvoke v.<org.osgi.service.cm.Configuration: boolean updateIfDifferent(java.util.Dictionary)>(v);
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Persisted RCP tasks in OSGi configuration");
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String,java.lang.Throwable)>("Could not persist tasks", v);
throw v;
label:
return;
catch javax.jcr.RepositoryException from label to label with label;
catch java.io.IOException from label to label with label;
}
private void persistTasks(java.util.Dictionary, java.io.File) throws javax.jcr.RepositoryException, com.fasterxml.jackson.core.JsonGenerationException, com.fasterxml.jackson.databind.JsonMappingException, java.io.IOException
{
org.slf4j.Logger v;
com.fasterxml.jackson.databind.ObjectWriter v;
com.fasterxml.jackson.databind.ObjectMapper v;
java.io.File v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.lang.String v, v;
java.util.Dictionary v;
java.util.SortedMap v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: java.util.Dictionary;
v := @parameter: java.io.File;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper>;
v = virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: com.fasterxml.jackson.databind.ObjectWriter writerWithDefaultPrettyPrinter()>();
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = virtualinvoke v.<com.fasterxml.jackson.databind.ObjectWriter: java.lang.String writeValueAsString(java.lang.Object)>(v);
v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.String serializedTasks> = v;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.String serializedTasks>;
virtualinvoke v.<java.util.Dictionary: java.lang.Object put(java.lang.Object,java.lang.Object)>("serialized.tasks.json", v);
if v == null goto label;
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void persistTasksCredentials(java.io.File)>(v);
label:
v = <org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("Persisted sensitive part of RCP tasks in \'{}\'", v);
return;
}
private void persistTasksCredentials()
{
java.lang.IllegalStateException v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.io.IOException v;
java.io.File v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
label:
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.io.File dataFile>;
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void persistTasksCredentials(java.io.File)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String,java.lang.Throwable)>("Could not persist tasks credentials", v);
throw v;
label:
return;
catch java.io.IOException from label to label with label;
}
private void persistTasksCredentials(java.io.File) throws java.io.IOException
{
java.lang.Throwable v;
java.util.Properties v;
java.util.Iterator v;
java.util.Collection v;
com.fasterxml.jackson.databind.ObjectMapper v;
java.io.FileOutputStream v;
java.io.File v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.lang.Object v;
java.lang.String v, v;
javax.jcr.Credentials v;
java.util.SortedMap v;
boolean v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: java.io.File;
v = new java.util.Properties;
specialinvoke v.<java.util.Properties: void <init>()>();
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = interfaceinvoke v.<java.util.SortedMap: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: com.fasterxml.jackson.databind.ObjectMapper mapper>;
v = virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: javax.jcr.Credentials getSourceCredentials()>();
v = virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: java.lang.String writeValueAsString(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: java.lang.String getId()>();
virtualinvoke v.<java.util.Properties: java.lang.Object setProperty(java.lang.String,java.lang.String)>(v, v);
goto label;
label:
v = new java.io.FileOutputStream;
specialinvoke v.<java.io.FileOutputStream: void <init>(java.io.File)>(v);
label:
virtualinvoke v.<java.util.Properties: void store(java.io.OutputStream,java.lang.String)>(v, "Credentials used for Apache Jackrabbit FileVault RCP");
label:
virtualinvoke v.<java.io.FileOutputStream: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public org.apache.jackrabbit.vault.rcp.RcpTask getTask(java.lang.String)
{
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.lang.Object v;
java.lang.String v;
java.util.SortedMap v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: java.lang.String;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = interfaceinvoke v.<java.util.SortedMap: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public java.util.Map getTasks()
{
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.util.SortedMap v;
java.util.Map v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = staticinvoke <java.util.Collections: java.util.Map unmodifiableMap(java.util.Map)>(v);
return v;
}
public org.apache.jackrabbit.vault.rcp.RcpTask addTask(org.apache.jackrabbit.vault.fs.api.RepositoryAddress, org.apache.jackrabbit.spi2dav.ConnectionOptions, javax.jcr.Credentials, java.lang.String, java.lang.String, java.util.List, java.lang.Boolean) throws org.apache.jackrabbit.vault.fs.config.ConfigurationException
{
org.apache.jackrabbit.spi2dav.ConnectionOptions v;
org.apache.jackrabbit.vault.fs.api.RepositoryAddress v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
int v;
java.lang.Boolean v;
java.lang.String v, v, v, v;
boolean v;
java.lang.IllegalArgumentException v;
java.util.List v;
java.lang.ClassLoader v;
javax.jcr.Credentials v;
java.util.SortedMap v, v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: org.apache.jackrabbit.vault.fs.api.RepositoryAddress;
v := @parameter: org.apache.jackrabbit.spi2dav.ConnectionOptions;
v := @parameter: javax.jcr.Credentials;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v := @parameter: java.lang.Boolean;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = interfaceinvoke v.<java.util.SortedMap: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Task with id \u already exists.");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl;
v = virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.ClassLoader getClassLoaderForRepositoryFactory()>();
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: void <init>(java.lang.ClassLoader,org.apache.jackrabbit.vault.fs.api.RepositoryAddress,org.apache.jackrabbit.spi2dav.ConnectionOptions,javax.jcr.Credentials,java.lang.String,java.lang.String,java.util.List,java.lang.Boolean)>(v, v, v, v, v, v, v, v);
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: java.lang.String getId()>();
interfaceinvoke v.<java.util.SortedMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void persistTasks()>();
return v;
}
public org.apache.jackrabbit.vault.rcp.RcpTask addTask(org.apache.jackrabbit.vault.fs.api.RepositoryAddress, org.apache.jackrabbit.spi2dav.ConnectionOptions, javax.jcr.Credentials, java.lang.String, java.lang.String, org.apache.jackrabbit.vault.fs.api.WorkspaceFilter, java.lang.Boolean)
{
org.apache.jackrabbit.spi2dav.ConnectionOptions v;
org.apache.jackrabbit.vault.fs.api.RepositoryAddress v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
int v;
java.lang.Boolean v;
java.lang.String v, v, v, v;
boolean v;
java.lang.IllegalArgumentException v;
org.apache.jackrabbit.vault.fs.api.WorkspaceFilter v;
java.lang.ClassLoader v;
javax.jcr.Credentials v;
java.util.SortedMap v, v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: org.apache.jackrabbit.vault.fs.api.RepositoryAddress;
v := @parameter: org.apache.jackrabbit.spi2dav.ConnectionOptions;
v := @parameter: javax.jcr.Credentials;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: org.apache.jackrabbit.vault.fs.api.WorkspaceFilter;
v := @parameter: java.lang.Boolean;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = interfaceinvoke v.<java.util.SortedMap: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Task with id \u already exists.");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl;
v = virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.ClassLoader getClassLoaderForRepositoryFactory()>();
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: void <init>(java.lang.ClassLoader,org.apache.jackrabbit.vault.fs.api.RepositoryAddress,org.apache.jackrabbit.spi2dav.ConnectionOptions,javax.jcr.Credentials,java.lang.String,java.lang.String,org.apache.jackrabbit.vault.fs.api.WorkspaceFilter,java.lang.Boolean)>(v, v, v, v, v, v, v, v);
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: java.lang.String getId()>();
interfaceinvoke v.<java.util.SortedMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void persistTasks()>();
return v;
}
public org.apache.jackrabbit.vault.rcp.RcpTask editTask(java.lang.String, org.apache.jackrabbit.vault.fs.api.RepositoryAddress, org.apache.jackrabbit.spi2dav.ConnectionOptions, javax.jcr.Credentials, java.lang.String, java.util.List, org.apache.jackrabbit.vault.fs.api.WorkspaceFilter, java.lang.Boolean) throws org.apache.jackrabbit.vault.fs.config.ConfigurationException
{
org.apache.jackrabbit.spi2dav.ConnectionOptions v;
org.apache.jackrabbit.vault.fs.api.RepositoryAddress v;
java.lang.IllegalArgumentException v;
java.util.List v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
org.apache.jackrabbit.vault.fs.api.WorkspaceFilter v;
java.lang.Boolean v;
java.lang.Object v;
java.lang.String v, v, v;
javax.jcr.Credentials v;
java.util.SortedMap v, v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: java.lang.String;
v := @parameter: org.apache.jackrabbit.vault.fs.api.RepositoryAddress;
v := @parameter: org.apache.jackrabbit.spi2dav.ConnectionOptions;
v := @parameter: javax.jcr.Credentials;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v := @parameter: org.apache.jackrabbit.vault.fs.api.WorkspaceFilter;
v := @parameter: java.lang.Boolean;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = interfaceinvoke v.<java.util.SortedMap: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("No such task with id=\'\u0001\'");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl;
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: void <init>(org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl,org.apache.jackrabbit.vault.fs.api.RepositoryAddress,org.apache.jackrabbit.spi2dav.ConnectionOptions,javax.jcr.Credentials,java.lang.String,java.util.List,org.apache.jackrabbit.vault.fs.api.WorkspaceFilter,java.lang.Boolean)>(v, v, v, v, v, v, v, v);
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
interfaceinvoke v.<java.util.SortedMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void persistTasks()>();
return v;
}
public boolean removeTask(java.lang.String)
{
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.lang.Object v;
java.lang.String v;
java.util.SortedMap v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: java.lang.String;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = interfaceinvoke v.<java.util.SortedMap: java.lang.Object remove(java.lang.Object)>(v);
if v == null goto label;
interfaceinvoke v.<org.apache.jackrabbit.vault.rcp.RcpTask: boolean stop()>();
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void persistTasks()>();
return 1;
label:
return 0;
}
public void setSourceCredentials(java.lang.String, javax.jcr.Credentials)
{
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
java.lang.Object v;
java.lang.String v, v;
java.lang.IllegalArgumentException v;
javax.jcr.Credentials v;
java.util.SortedMap v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v := @parameter: java.lang.String;
v := @parameter: javax.jcr.Credentials;
v = v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.util.SortedMap tasks>;
v = interfaceinvoke v.<java.util.SortedMap: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("No such task with id=\'\u0001\'");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
virtualinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskImpl: void setSourceCredentials(javax.jcr.Credentials)>(v);
specialinvoke v.<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: void persistTasksCredentials()>();
return;
}
protected java.lang.ClassLoader getClassLoaderForRepositoryFactory()
{
java.lang.Class v;
java.lang.ClassLoader v;
org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl v;
v := @this: org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
return v;
}
static void <clinit>()
{
java.lang.Class v;
java.lang.String v;
org.slf4j.Logger v;
v = class "Lorg/apache/jackrabbit/vault/rcp/impl/RcpTaskManagerImpl;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: java.lang.String PID> = v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/jackrabbit/vault/rcp/impl/RcpTaskManagerImpl;");
<org.apache.jackrabbit.vault.rcp.impl.RcpTaskManagerImpl: org.slf4j.Logger log> = v;
return;
}
}