use of cbit.vcell.server.ConnectionException in project vcell by virtualcell.
the class ClientServerManager method connectToServer.
/**
* Insert the method's description here.
* Creation date: (5/12/2004 4:48:13 PM)
*/
private VCellConnection connectToServer(InteractiveContext requester) {
VCellThreadChecker.checkRemoteInvocation();
VCellConnection newVCellConnection = null;
VCellConnectionFactory vcConnFactory = null;
String badConnStr = "";
try {
switch(getClientServerInfo().getServerType()) {
case SERVER_REMOTE:
{
String apihost = getClientServerInfo().getApihost();
Integer apiport = getClientServerInfo().getApiport();
try {
badConnStr += apihost + ":" + apiport;
vcConnFactory = new RemoteProxyVCellConnectionFactory(apihost, apiport, getClientServerInfo().getUserLoginInfo());
setConnectionStatus(new ClientConnectionStatus(getClientServerInfo().getUsername(), apihost, apiport, ConnectionStatus.INITIALIZING));
newVCellConnection = vcConnFactory.createVCellConnection();
} catch (AuthenticationException ex) {
throw ex;
}
break;
}
case SERVER_LOCAL:
{
new PropertyLoader();
LocalVCellConnectionService localVCellConnectionService = VCellServiceHelper.getInstance().loadService(LocalVCellConnectionService.class);
vcConnFactory = localVCellConnectionService.getLocalVCellConnectionFactory(getClientServerInfo().getUserLoginInfo());
setConnectionStatus(new ClientConnectionStatus(getClientServerInfo().getUsername(), null, null, ConnectionStatus.INITIALIZING));
newVCellConnection = vcConnFactory.createVCellConnection();
break;
}
}
requester.clearConnectWarning();
reconnectStat = ReconnectStatus.NOT;
} catch (AuthenticationException aexc) {
aexc.printStackTrace(System.out);
requester.showErrorDialog(aexc.getMessage());
} catch (ConnectionException cexc) {
String msg = badConnectMessage(badConnStr) + "\n" + cexc.getMessage();
cexc.printStackTrace(System.out);
ErrorUtils.sendRemoteLogMessage(getClientServerInfo().getUserLoginInfo(), msg);
if (reconnectStat != ReconnectStatus.SUBSEQUENT) {
requester.showConnectWarning(msg);
}
} catch (Exception exc) {
exc.printStackTrace(System.out);
String msg = badConnectMessage(badConnStr) + "\nException:\n" + exc.getMessage();
ErrorUtils.sendRemoteLogMessage(getClientServerInfo().getUserLoginInfo(), msg);
requester.showErrorDialog(msg);
}
return newVCellConnection;
}
use of cbit.vcell.server.ConnectionException in project vcell by virtualcell.
the class ClientServerManager method connectToServer.
/**
* Insert the method's description here.
* Creation date: (5/12/2004 4:48:13 PM)
*/
private VCellConnection connectToServer(InteractiveContext requester, boolean bShowErrors) {
BeanUtils.updateDynamicClientProperties();
VCellThreadChecker.checkRemoteInvocation();
VCellConnection newVCellConnection = null;
VCellConnectionFactory vcConnFactory = null;
String badConnStr = "";
try {
try {
switch(getClientServerInfo().getServerType()) {
case SERVER_REMOTE:
{
String apihost = getClientServerInfo().getApihost();
Integer apiport = getClientServerInfo().getApiport();
try {
badConnStr += apihost + ":" + apiport;
vcConnFactory = new RemoteProxyVCellConnectionFactory(apihost, apiport, getClientServerInfo().getUserLoginInfo());
setConnectionStatus(new ClientConnectionStatus(getClientServerInfo().getUsername(), apihost, apiport, ConnectionStatus.INITIALIZING));
newVCellConnection = vcConnFactory.createVCellConnection();
} catch (AuthenticationException ex) {
throw ex;
}
break;
}
case SERVER_LOCAL:
{
new PropertyLoader();
LocalVCellConnectionService localVCellConnectionService = VCellServiceHelper.getInstance().loadService(LocalVCellConnectionService.class);
vcConnFactory = localVCellConnectionService.getLocalVCellConnectionFactory(getClientServerInfo().getUserLoginInfo());
setConnectionStatus(new ClientConnectionStatus(getClientServerInfo().getUsername(), null, null, ConnectionStatus.INITIALIZING));
newVCellConnection = vcConnFactory.createVCellConnection();
break;
}
}
requester.clearConnectWarning();
reconnectStat = ReconnectStatus.NOT;
} catch (Exception e) {
e.printStackTrace();
if (bShowErrors) {
throw e;
}
}
} catch (AuthenticationException aexc) {
aexc.printStackTrace(System.out);
requester.showErrorDialog(aexc.getMessage());
} catch (ConnectionException cexc) {
String msg = badConnectMessage(badConnStr) + "\n" + cexc.getMessage();
cexc.printStackTrace(System.out);
ErrorUtils.sendRemoteLogMessage(getClientServerInfo().getUserLoginInfo(), msg);
if (reconnectStat != ReconnectStatus.SUBSEQUENT) {
requester.showConnectWarning(msg);
}
} catch (HttpResponseException httpexc) {
httpexc.printStackTrace(System.out);
if (httpexc.getStatusCode() == HttpStatus.SC_UNAUTHORIZED) {
requester.showErrorDialog("Invalid Userid or Password\n\n" + httpexc.getMessage());
} else {
String msg = "Exception: " + httpexc.getMessage() + "\n\n" + badConnectMessage(badConnStr);
ErrorUtils.sendRemoteLogMessage(getClientServerInfo().getUserLoginInfo(), msg);
requester.showErrorDialog(msg);
}
} catch (Exception exc) {
exc.printStackTrace(System.out);
String msg = "Exception: " + exc.getMessage() + "\n\n" + badConnectMessage(badConnStr);
ErrorUtils.sendRemoteLogMessage(getClientServerInfo().getUserLoginInfo(), msg);
requester.showErrorDialog(msg);
}
return newVCellConnection;
}
use of cbit.vcell.server.ConnectionException in project vcell by virtualcell.
the class LocalVCellConnectionFactory method createVCellConnection.
/**
* This method was created in VisualAge.
* @return cbit.vcell.server.VCellConnection
*/
public VCellConnection createVCellConnection() throws AuthenticationException, ConnectionException {
try {
if (connectionFactory == null) {
connectionFactory = DatabaseService.getInstance().createConnectionFactory();
}
KeyFactory keyFactory = connectionFactory.getKeyFactory();
LocalVCellConnection.setDatabaseResources(connectionFactory, keyFactory);
AdminDBTopLevel adminDbTopLevel = new AdminDBTopLevel(connectionFactory);
boolean bEnableRetry = false;
boolean isLocal = true;
User user = adminDbTopLevel.getUser(userLoginInfo.getUserName(), userLoginInfo.getDigestedPassword(), bEnableRetry, isLocal);
if (user != null) {
userLoginInfo.setUser(user);
} else {
throw new AuthenticationException("failed to authenticate as user " + userLoginInfo.getUserName());
}
DatabaseServerImpl databaseServerImpl = new DatabaseServerImpl(connectionFactory, keyFactory);
boolean bCache = false;
Cachetable cacheTable = null;
DataSetControllerImpl dataSetControllerImpl = new DataSetControllerImpl(cacheTable, new File(PropertyLoader.getRequiredProperty(PropertyLoader.primarySimDataDirInternalProperty)), new File(PropertyLoader.getRequiredProperty(PropertyLoader.secondarySimDataDirInternalProperty)));
SimulationDatabaseDirect simulationDatabase = new SimulationDatabaseDirect(adminDbTopLevel, databaseServerImpl, bCache);
ExportServiceImpl exportServiceImpl = new ExportServiceImpl();
LocalVCellConnection vcConn = new LocalVCellConnection(userLoginInfo, simulationDatabase, dataSetControllerImpl, exportServiceImpl);
linkHDFLib();
return vcConn;
} catch (Throwable exc) {
lg.error(exc.getMessage(), exc);
throw new ConnectionException(exc.getMessage());
}
}
Aggregations