private TranLogConfiguration createCustomTranLogConfiguration ( String recoveredServerIdentity , String logDir , boolean isPeerRecoverySupported ) throws URISyntaxException { if ( tc . isEntryEnabled ( ) ) Tr . entry ( tc , "createCustomTranLogConfiguration" , new java . lang . Object [ ] { recoveredServerIdentity , logDir , this } ) ; TranLogConfiguration tlc = null ; final java . util . Properties props = new java . util . Properties ( ) ; java . net . URI logSettingURI = new java . net . URI ( logDir ) ; String scheme = logSettingURI . getScheme ( ) ; String logSetting = logSettingURI . getAuthority ( ) ; if ( tc . isDebugEnabled ( ) ) Tr . debug ( tc , "Scheme read from URI " + scheme + ", log setting" + logSetting ) ; // For the cloud and peer recovery scenarios, we'll automatically add a suffix that matches the recoveryIdentity if ( tc . isDebugEnabled ( ) ) Tr . debug ( tc , "Test to see if peer recovery is supported - " , isPeerRecoverySupported ) ; if ( isPeerRecoverySupported ) { if ( tc . isDebugEnabled ( ) ) Tr . debug ( tc , "Work with server recovery identity - " + recoveredServerIdentity + ", reset current logdir" ) ; if ( recoveredServerIdentity != null ) { logDir = "custom://com.ibm.rls.jdbc.SQLRecoveryLogFactory?datasource=Liberty" + ",tablesuffix=" + recoveredServerIdentity ; if ( tc . isDebugEnabled ( ) ) Tr . debug ( tc , "log dir is now - " , logDir ) ; } } props . setProperty ( "LOG_DIRECTORY" , logDir ) ; tlc = new TranLogConfiguration ( logSetting , props ) ; if ( tc . isEntryEnabled ( ) ) Tr . exit ( tc , "createCustomTranLogConfiguration" , tlc ) ; return tlc ; }
Creates a custom TranLogConfiguration object appropriate for storing transaction logs in an RDBMS or other custom repository .