the closing of fetching thread has been updated
git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/user/speciesdiscovery@70778 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
fe583ee0af
commit
a8a203bb1c
|
@ -824,6 +824,11 @@ public class SearchController {
|
|||
|
||||
searchBorderLayoutPanel.getSpeciesCenterPanel().setMaskGridPanel(mask);
|
||||
|
||||
if(mask)
|
||||
searchBorderLayoutPanel.getSpeciesWestPanel().mask();
|
||||
else
|
||||
searchBorderLayoutPanel.getSpeciesWestPanel().unmask();
|
||||
|
||||
searchBorderLayoutPanel.getSpeciesNorthPanel().activeButtonSearch(!mask);
|
||||
}
|
||||
|
||||
|
|
|
@ -238,13 +238,13 @@ public class TaxonomySearchServiceImpl extends RemoteServiceServlet implements T
|
|||
CloseableIterator<ResultElement> input = taxonomyService.searchByQuery(query);
|
||||
|
||||
//DEBUG
|
||||
System.out.println("returned input stream by service...");
|
||||
logger.trace("returned input stream by service...");
|
||||
// System.out.println("service return iterator searched...");
|
||||
logger.trace("service return iterator searched...");
|
||||
|
||||
SearchResultType resultType = QueryUtil.getQueryResultType(query);
|
||||
CloseableIterator<FetchingElement> output = IteratorChainBuilder.buildChain(input, resultType, aslSession);
|
||||
FetchingSessionUtil.createFetchingSession(output, resultType, aslSession);
|
||||
|
||||
logger.trace("creating fetching session completed!");
|
||||
return resultType;
|
||||
|
||||
} catch (Exception e) {
|
||||
|
@ -286,6 +286,7 @@ public class TaxonomySearchServiceImpl extends RemoteServiceServlet implements T
|
|||
if(daoTaxonomyRow!=null)
|
||||
daoTaxonomyRow.removeAll();
|
||||
|
||||
logger.trace("delete all row from Dao's - completed");
|
||||
} catch (Exception e) {
|
||||
logger.error("Error in delete all row");
|
||||
throw new Exception("Error in delete all row" + e.getCause(), e);
|
||||
|
@ -624,7 +625,7 @@ public class TaxonomySearchServiceImpl extends RemoteServiceServlet implements T
|
|||
* {@inheritDoc}
|
||||
*/
|
||||
public void stopSearchWithoutRemove() throws SearchServiceException {
|
||||
logger.trace("stopSearch()");
|
||||
logger.trace("stopSearch without Remove");
|
||||
|
||||
ASLSession session = getASLSession();
|
||||
//we safely get the session if exists
|
||||
|
@ -644,7 +645,7 @@ public class TaxonomySearchServiceImpl extends RemoteServiceServlet implements T
|
|||
*/
|
||||
@Override
|
||||
public void stopSearch() throws SearchServiceException {
|
||||
logger.trace("stopSearch()");
|
||||
logger.trace("stopSearch");
|
||||
|
||||
ASLSession session = getASLSession();
|
||||
FetchingSession<? extends FetchingElement> searchSession = SessionUtil.getCurrentSearchSession(session);
|
||||
|
|
|
@ -104,7 +104,7 @@ public class SpeciesService {
|
|||
logger.trace("searchByFilters searchTerm: "+searchTerm+ " usearchFilters: "+searchFilters);
|
||||
|
||||
try {
|
||||
System.out.println("query building...");
|
||||
logger.trace("query building...");
|
||||
String query = QueryBuilder.buildQuery(searchTerm, searchType, searchFilters);
|
||||
// System.out.println("query build - OK " + query);
|
||||
logger.trace("query build - OK " + query);
|
||||
|
@ -146,7 +146,7 @@ public class SpeciesService {
|
|||
|
||||
|
||||
public CloseableIterator<ResultElement> searchByQuery(String query) throws SearchServiceException {
|
||||
logger.trace("searchByQuery query: "+query);
|
||||
logger.trace("search by Query - query is: "+query);
|
||||
// System.out.println("searchByQuery query: "+query);
|
||||
|
||||
try {
|
||||
|
|
|
@ -6,6 +6,7 @@ package org.gcube.portlets.user.speciesdiscovery.server.session;
|
|||
import java.io.Closeable;
|
||||
import java.io.IOException;
|
||||
import java.sql.SQLException;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
import org.gcube.portlets.user.speciesdiscovery.server.stream.Aggregator;
|
||||
|
@ -61,10 +62,30 @@ public class FetchingSession<T extends FetchingElement> implements Closeable {
|
|||
|
||||
public void close() throws IOException
|
||||
{
|
||||
logger.trace("fetcherThread close...");
|
||||
fetcher.close();
|
||||
// logger.trace("###fetcherThread close - OK");
|
||||
logger.trace("###fetcherThread close - OK");
|
||||
|
||||
new Thread(){
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
|
||||
Long startTime = System.currentTimeMillis();
|
||||
logger.trace("##new thread run for closing old fetcher... time: "+startTime);
|
||||
|
||||
fetcher.close();
|
||||
//logger.trace("###fetcherThread close - OK");
|
||||
|
||||
Long endTime = System.currentTimeMillis() - startTime;
|
||||
String time = String.format("%d msc %d sec", endTime, TimeUnit.MILLISECONDS.toSeconds(endTime));
|
||||
|
||||
logger.trace("##old fetcher has been closed.. in " + time);
|
||||
|
||||
} catch (IOException e) {
|
||||
logger.error("An error occurred in fetcher Thread close ",e);
|
||||
e.printStackTrace();
|
||||
}
|
||||
};
|
||||
}.start();
|
||||
|
||||
}
|
||||
|
||||
public boolean isComplete()
|
||||
|
|
Reference in New Issue