public abstract class org.apache.activemq.store.jdbc.DataSourceServiceSupport extends org.apache.activemq.broker.LockableServiceSupport
{
private java.lang.String dataDirectory;
private java.io.File dataDirectoryFile;
private javax.sql.DataSource dataSource;
private javax.sql.DataSource createdDefaultDataSource;
public void <init>()
{
java.lang.String v;
org.apache.activemq.store.jdbc.DataSourceServiceSupport v;
v := @this: org.apache.activemq.store.jdbc.DataSourceServiceSupport;
specialinvoke v.<org.apache.activemq.broker.LockableServiceSupport: void <init>()>();
v = staticinvoke <org.apache.activemq.util.IOHelper: java.lang.String getDefaultDataDirectory()>();
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: java.lang.String dataDirectory> = v;
return;
}
public void <init>(javax.sql.DataSource)
{
javax.sql.DataSource v;
java.lang.String v;
org.apache.activemq.store.jdbc.DataSourceServiceSupport v;
v := @this: org.apache.activemq.store.jdbc.DataSourceServiceSupport;
v := @parameter: javax.sql.DataSource;
specialinvoke v.<org.apache.activemq.broker.LockableServiceSupport: void <init>()>();
v = staticinvoke <org.apache.activemq.util.IOHelper: java.lang.String getDefaultDataDirectory()>();
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: java.lang.String dataDirectory> = v;
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource dataSource> = v;
return;
}
public java.io.File getDataDirectoryFile()
{
org.apache.activemq.store.jdbc.DataSourceServiceSupport v;
java.lang.String v;
java.io.File v, v, v;
v := @this: org.apache.activemq.store.jdbc.DataSourceServiceSupport;
v = v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: java.io.File dataDirectoryFile>;
if v != null goto label;
v = new java.io.File;
v = virtualinvoke v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: java.lang.String getDataDirectory()>();
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: java.io.File dataDirectoryFile> = v;
label:
v = v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: java.io.File dataDirectoryFile>;
return v;
}
public void setDataDirectoryFile(java.io.File)
{
org.apache.activemq.store.jdbc.DataSourceServiceSupport v;
java.io.File v;
v := @this: org.apache.activemq.store.jdbc.DataSourceServiceSupport;
v := @parameter: java.io.File;
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: java.io.File dataDirectoryFile> = v;
return;
}
public java.lang.String getDataDirectory()
{
java.lang.String v;
org.apache.activemq.store.jdbc.DataSourceServiceSupport v;
v := @this: org.apache.activemq.store.jdbc.DataSourceServiceSupport;
v = v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: java.lang.String dataDirectory>;
return v;
}
public void setDataDirectory(java.lang.String)
{
java.lang.String v;
org.apache.activemq.store.jdbc.DataSourceServiceSupport v;
v := @this: org.apache.activemq.store.jdbc.DataSourceServiceSupport;
v := @parameter: java.lang.String;
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: java.lang.String dataDirectory> = v;
return;
}
public javax.sql.DataSource getDataSource() throws java.io.IOException
{
org.apache.activemq.store.jdbc.DataSourceServiceSupport v;
java.lang.IllegalArgumentException v;
java.io.File v;
javax.sql.DataSource v, v, v, v, v;
java.lang.String v;
v := @this: org.apache.activemq.store.jdbc.DataSourceServiceSupport;
v = v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource dataSource>;
if v != null goto label;
v = virtualinvoke v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: java.io.File getDataDirectoryFile()>();
v = virtualinvoke v.<java.io.File: java.lang.String getCanonicalPath()>();
v = staticinvoke <org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource createDataSource(java.lang.String)>(v);
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource dataSource> = v;
v = v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource dataSource>;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("No dataSource property has been configured");
throw v;
label:
v = v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource dataSource>;
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource createdDefaultDataSource> = v;
label:
v = v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource dataSource>;
return v;
}
public void closeDataSource(javax.sql.DataSource)
{
org.apache.activemq.store.jdbc.DataSourceServiceSupport v;
javax.sql.DataSource v, v, v;
boolean v;
v := @this: org.apache.activemq.store.jdbc.DataSourceServiceSupport;
v := @parameter: javax.sql.DataSource;
v = v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource createdDefaultDataSource>;
if v == null goto label;
v = v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource createdDefaultDataSource>;
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
staticinvoke <org.apache.activemq.store.jdbc.DataSourceServiceSupport: void shutdownDefaultDataSource(javax.sql.DataSource)>(v);
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource dataSource> = null;
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource createdDefaultDataSource> = null;
label:
return;
}
public void setDataSource(javax.sql.DataSource)
{
javax.sql.DataSource v;
org.apache.activemq.store.jdbc.DataSourceServiceSupport v;
v := @this: org.apache.activemq.store.jdbc.DataSourceServiceSupport;
v := @parameter: javax.sql.DataSource;
v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource dataSource> = v;
return;
}
public static javax.sql.DataSource createDataSource(java.lang.String) throws java.io.IOException
{
javax.sql.DataSource v;
java.lang.String v;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource createDataSource(java.lang.String,java.lang.String)>(v, "derbydb");
return v;
}
public static javax.sql.DataSource createDataSource(java.lang.String, java.lang.String) throws java.io.IOException
{
org.apache.derby.jdbc.EmbeddedDataSource v;
java.lang.String v, v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
staticinvoke <java.lang.System: java.lang.String setProperty(java.lang.String,java.lang.String)>("derby.system.home", v);
staticinvoke <java.lang.System: java.lang.String setProperty(java.lang.String,java.lang.String)>("derby.storage.fileSyncTransactionLog", "true");
staticinvoke <java.lang.System: java.lang.String setProperty(java.lang.String,java.lang.String)>("derby.storage.pageCacheSize", "100");
v = new org.apache.derby.jdbc.EmbeddedDataSource;
specialinvoke v.<org.apache.derby.jdbc.EmbeddedDataSource: void <init>()>();
virtualinvoke v.<org.apache.derby.jdbc.EmbeddedDataSource: void setDatabaseName(java.lang.String)>(v);
virtualinvoke v.<org.apache.derby.jdbc.EmbeddedDataSource: void setCreateDatabase(java.lang.String)>("create");
return v;
}
public static void shutdownDefaultDataSource(javax.sql.DataSource)
{
javax.sql.DataSource v;
java.sql.SQLException v;
v := @parameter: javax.sql.DataSource;
virtualinvoke v.<org.apache.derby.jdbc.EmbeddedDataSource: void setCreateDatabase(java.lang.String)>("shutdown");
virtualinvoke v.<org.apache.derby.jdbc.EmbeddedDataSource: void setShutdownDatabase(java.lang.String)>("shutdown");
label:
virtualinvoke v.<org.apache.derby.jdbc.EmbeddedDataSource: java.sql.Connection getConnection()>();
label:
goto label;
label:
v := @caughtexception;
label:
return;
catch java.sql.SQLException from label to label with label;
}
public java.lang.String toString()
{
javax.sql.DataSource v;
java.lang.String v;
org.apache.activemq.store.jdbc.DataSourceServiceSupport v;
v := @this: org.apache.activemq.store.jdbc.DataSourceServiceSupport;
v = v.<org.apache.activemq.store.jdbc.DataSourceServiceSupport: javax.sql.DataSource dataSource>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (javax.sql.DataSource)>(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[])>("\u0001");
return v;
}
}