Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
michaeloffner committed Jul 24, 2017
1 parent 82afd38 commit da26629
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 20 deletions.
4 changes: 2 additions & 2 deletions build.number
@@ -1,3 +1,3 @@
#Build Number for ANT. Do not edit!
#Mon Jul 17 23:01:33 CEST 2017
build.number=65
#Mon Jul 24 18:17:09 CEST 2017
build.number=66
Expand Up @@ -88,11 +88,12 @@ SessionFactory getSessionFactory(Key datasSourceName) throws PageException{
}

void resetSession(PageContext pc,SessionFactory factory, Key dataSourceName, SessionFactoryData data) throws PageException {

for(int i=0;i<connections.length;i++){
if(dataSourceName.equals(connections[i].getDatasource().getName())) {
createSession(factory, connections[i]);
return;
if(connections!=null) {
for(int i=0;i<connections.length;i++){
if(dataSourceName.equals(connections[i].getDatasource().getName())) {
createSession(factory, connections[i]);
return;
}
}
}
DataSource ds = data.getDataSource(dataSourceName);
Expand All @@ -119,8 +120,10 @@ public ORMEngine getEngine() {
@Override
public void flushAll(PageContext pc) throws PageException {
// release all connections
for(int i=0;i<connections.length;i++) {
_flush(pc, connections[i].getDatasource());
if(connections!=null) {
for(int i=0;i<connections.length;i++) {
_flush(pc, connections[i].getDatasource());
}
}
}

Expand Down Expand Up @@ -534,33 +537,37 @@ public void close(PageContext pc, String datasource) throws PageException {
Key dsn = CommonUtil.toKey(ds.getName());

// close Session
getSession(dsn).close();
Session s = getSession(dsn);
if(s.isOpen())s.close();

// release connection
List<DatasourceConnection> list=new ArrayList<DatasourceConnection>();
for(int i=0;i<connections.length;i++){
if(connections[i].getDatasource().equals(ds)) {
CommonUtil.releaseDatasourceConnection(pc, connections[i]);
if(connections!=null) {
for(int i=0;i<connections.length;i++){
if(connections[i].getDatasource().equals(ds)) {
CommonUtil.releaseDatasourceConnection(pc, connections[i]);
}
else list.add(connections[i]);
}
else list.add(connections[i]);
}
connections=list.toArray(new DatasourceConnection[list.size()]);
}

@Override
public void closeAll(PageContext pc) throws PageException {

Iterator<Session> it = _sessions.values().iterator();
while(it.hasNext()){
Session s = it.next();
s.close();
if(s.isOpen())s.close();
}

// release all connections
for(int i=0;i<connections.length;i++){
CommonUtil.releaseDatasourceConnection(pc, connections[i]);
if(connections!=null) {
for(int i=0;i<connections.length;i++){
CommonUtil.releaseDatasourceConnection(pc, connections[i]);
}
connections=null;
}
connections=null;
}

@Override
Expand Down
Expand Up @@ -49,7 +49,7 @@ public CFCGetter( Collection.Key key){
public Object get(Object trg) throws HibernateException {
try {
// MUST cache this, perhaps when building xml
PageContext pc = CommonUtil.pc();
PageContext pc = CommonUtil.pc(); // pc can be null
ORMSession session = pc.getORMSession(true);
Component cfc = CommonUtil.toComponent(trg);
String dsn = CFMLEngineFactory.getInstance().getORMUtil().getDataSourceName(pc, cfc);
Expand All @@ -64,6 +64,9 @@ public Object get(Object trg) throws HibernateException {
catch (PageException pe) {
throw new HibernatePageException(pe);
}
catch (Exception e) {
throw new HibernatePageException(CFMLEngineFactory.getInstance().getCastUtil().toPageException(e));
}
}


Expand Down

0 comments on commit da26629

Please sign in to comment.