public class org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect extends java.lang.Object implements org.apache.isis.persistence.jdo.spring.integration.JdoDialect, org.springframework.dao.support.PersistenceExceptionTranslator
{
private org.springframework.jdbc.support.SQLExceptionTranslator jdbcExceptionTranslator;
public void <init>()
{
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public void <init>(java.lang.Object)
{
org.springframework.jdbc.support.SQLExceptionTranslator v;
java.lang.Object v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v := @parameter: java.lang.Object;
specialinvoke v.<java.lang.Object: void <init>()>();
v = staticinvoke <org.apache.isis.persistence.jdo.spring.integration.PersistenceManagerFactoryUtils: org.springframework.jdbc.support.SQLExceptionTranslator newJdbcExceptionTranslator(java.lang.Object)>(v);
v.<org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect: org.springframework.jdbc.support.SQLExceptionTranslator jdbcExceptionTranslator> = v;
return;
}
public void setJdbcExceptionTranslator(org.springframework.jdbc.support.SQLExceptionTranslator)
{
org.springframework.jdbc.support.SQLExceptionTranslator v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v := @parameter: org.springframework.jdbc.support.SQLExceptionTranslator;
v.<org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect: org.springframework.jdbc.support.SQLExceptionTranslator jdbcExceptionTranslator> = v;
return;
}
public org.springframework.jdbc.support.SQLExceptionTranslator getJdbcExceptionTranslator()
{
org.springframework.jdbc.support.SQLExceptionTranslator v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v = v.<org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect: org.springframework.jdbc.support.SQLExceptionTranslator jdbcExceptionTranslator>;
return v;
}
public java.lang.Object beginTransaction(javax.jdo.Transaction, org.springframework.transaction.TransactionDefinition) throws javax.jdo.JDOException, java.sql.SQLException, org.springframework.transaction.TransactionException
{
org.springframework.transaction.TransactionDefinition v;
java.lang.String v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
javax.jdo.Transaction v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v := @parameter: javax.jdo.Transaction;
v := @parameter: org.springframework.transaction.TransactionDefinition;
v = virtualinvoke v.<org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect: java.lang.String getJdoIsolationLevel(org.springframework.transaction.TransactionDefinition)>(v);
if v == null goto label;
interfaceinvoke v.<javax.jdo.Transaction: void setIsolationLevel(java.lang.String)>(v);
label:
interfaceinvoke v.<javax.jdo.Transaction: void begin()>();
return null;
}
protected java.lang.String getJdoIsolationLevel(org.springframework.transaction.TransactionDefinition)
{
int v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
org.springframework.transaction.TransactionDefinition v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v := @parameter: org.springframework.transaction.TransactionDefinition;
v = interfaceinvoke v.<org.springframework.transaction.TransactionDefinition: int getIsolationLevel()>();
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
default: goto label;
};
label:
return "serializable";
label:
return "repeatable-read";
label:
return "read-committed";
label:
return "read-uncommitted";
label:
return null;
}
public void cleanupTransaction(java.lang.Object)
{
java.lang.Object v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v := @parameter: java.lang.Object;
return;
}
public org.springframework.jdbc.datasource.ConnectionHandle getJdbcConnection(javax.jdo.PersistenceManager, boolean) throws javax.jdo.JDOException, java.sql.SQLException
{
javax.jdo.PersistenceManager v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect$DataStoreConnectionHandle v;
boolean v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v := @parameter: javax.jdo.PersistenceManager;
v := @parameter: boolean;
v = new org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect$DataStoreConnectionHandle;
specialinvoke v.<org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect$DataStoreConnectionHandle: void <init>(javax.jdo.PersistenceManager)>(v);
return v;
}
public void releaseJdbcConnection(org.springframework.jdbc.datasource.ConnectionHandle, javax.jdo.PersistenceManager) throws javax.jdo.JDOException, java.sql.SQLException
{
javax.jdo.PersistenceManager v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
org.springframework.jdbc.datasource.ConnectionHandle v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v := @parameter: org.springframework.jdbc.datasource.ConnectionHandle;
v := @parameter: javax.jdo.PersistenceManager;
return;
}
public org.springframework.dao.DataAccessException translateExceptionIfPossible(java.lang.RuntimeException)
{
org.springframework.dao.DataAccessException v;
java.lang.RuntimeException v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
boolean v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v := @parameter: java.lang.RuntimeException;
v = v instanceof javax.jdo.JDOException;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect: org.springframework.dao.DataAccessException translateException(javax.jdo.JDOException)>(v);
return v;
label:
return null;
}
public org.springframework.dao.DataAccessException translateException(javax.jdo.JDOException)
{
java.lang.Throwable v, v;
org.springframework.dao.DataAccessException v, v;
org.springframework.jdbc.support.SQLExceptionTranslator v, v;
javax.jdo.JDOException v;
java.lang.String v, v, v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
boolean v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v := @parameter: javax.jdo.JDOException;
v = virtualinvoke v.<org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect: org.springframework.jdbc.support.SQLExceptionTranslator getJdbcExceptionTranslator()>();
if v == null goto label;
v = virtualinvoke v.<javax.jdo.JDOException: java.lang.Throwable getCause()>();
v = v instanceof java.sql.SQLException;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect: org.springframework.jdbc.support.SQLExceptionTranslator getJdbcExceptionTranslator()>();
v = virtualinvoke v.<javax.jdo.JDOException: java.lang.String getMessage()>();
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[])>("JDO operation: \u0001");
v = virtualinvoke v.<org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect: java.lang.String extractSqlStringFromException(javax.jdo.JDOException)>(v);
v = virtualinvoke v.<javax.jdo.JDOException: java.lang.Throwable getCause()>();
v = interfaceinvoke v.<org.springframework.jdbc.support.SQLExceptionTranslator: org.springframework.dao.DataAccessException translate(java.lang.String,java.lang.String,java.sql.SQLException)>(v, v, v);
return v;
label:
v = staticinvoke <org.apache.isis.persistence.jdo.spring.integration.PersistenceManagerFactoryUtils: org.springframework.dao.DataAccessException convertJdoAccessException(javax.jdo.JDOException)>(v);
return v;
}
protected java.lang.String extractSqlStringFromException(javax.jdo.JDOException)
{
javax.jdo.JDOException v;
org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect v;
v := @this: org.apache.isis.persistence.jdo.spring.integration.DefaultJdoDialect;
v := @parameter: javax.jdo.JDOException;
return null;
}
}