List of usage examples for com.google.gwt.jsonp.client JsonpRequestBuilder setTimeout
public void setTimeout(int timeout)
From source file:gov.wa.wsdot.mobile.client.activities.trafficmap.expresslanes.SeattleExpressLanesActivity.java
License:Open Source License
private void createPostList() { expressLaneItems.clear();/*ww w. j a va 2s. c om*/ view.showProgressIndicator(); JsonpRequestBuilder jsonp = new JsonpRequestBuilder(); // Set timeout for 30 seconds (30000 milliseconds) jsonp.setTimeout(30000); jsonp.requestObject(EXPRESS_LANES_URL, new AsyncCallback<ExpressLanesFeed>() { @Override public void onFailure(Throwable caught) { view.hideProgressIndicator(); phoneGap.getNotification().alert("Can't load data. Check your connection.", new AlertCallback() { @Override public void onOkButtonClicked() { // TODO Auto-generated method stub } }, "Connection Error"); } @Override public void onSuccess(ExpressLanesFeed result) { ExpressLaneItem item = null; if (result.getExpressLanes() != null) { int numEntries = result.getExpressLanes().getRoutes().length(); for (int i = 0; i < numEntries; i++) { item = new ExpressLaneItem(); item.setStatus(result.getExpressLanes().getRoutes().get(i).getStatus()); item.setRoute(result.getExpressLanes().getRoutes().get(i).getRoute()); item.setTitle(result.getExpressLanes().getRoutes().get(i).getTitle()); item.setUpdated(result.getExpressLanes().getRoutes().get(i).getUpdated()); item.setRouteIcon(routeIcon.get(result.getExpressLanes().getRoutes().get(i).getRoute())); expressLaneItems.add(item); } view.hideProgressIndicator(); view.render(expressLaneItems); view.refresh(); } } }); }
From source file:gov.wa.wsdot.mobile.client.activities.trafficmap.menu.expresslanes.SeattleExpressLanesActivity.java
License:Open Source License
private void createPostList() { view.showProgressIndicator();//w ww . j a va 2 s . com JsonpRequestBuilder jsonp = new JsonpRequestBuilder(); // Set timeout for 30 seconds (30000 milliseconds) jsonp.setTimeout(30000); jsonp.requestObject(EXPRESS_LANES_URL, new AsyncCallback<ExpressLanesFeed>() { @Override public void onFailure(Throwable caught) { view.hideProgressIndicator(); phoneGap.getNotification().alert("Can't load data. Check your connection.", new AlertCallback() { @Override public void onOkButtonClicked() { // TODO Auto-generated method stub } }, "Connection Error"); } @Override public void onSuccess(ExpressLanesFeed result) { ExpressLaneItem item = null; if (result.getExpressLanes() != null) { ArrayList<ExpressLaneItem> expressLaneItems = new ArrayList<ExpressLaneItem>(); HashMap<Integer, String> routeIcon = new HashMap<Integer, String>(); routeIcon.put(5, AppBundle.INSTANCE.css().i5Icon()); routeIcon.put(90, AppBundle.INSTANCE.css().i90Icon()); int numEntries = result.getExpressLanes().getRoutes().length(); for (int i = 0; i < numEntries; i++) { item = new ExpressLaneItem(); item.setStatus(result.getExpressLanes().getRoutes().get(i).getStatus()); item.setRoute(result.getExpressLanes().getRoutes().get(i).getRoute()); item.setTitle(result.getExpressLanes().getRoutes().get(i).getTitle()); item.setUpdated(result.getExpressLanes().getRoutes().get(i).getUpdated()); item.setRouteIcon(routeIcon.get(result.getExpressLanes().getRoutes().get(i).getRoute())); expressLaneItems.add(item); } view.hideProgressIndicator(); view.render(expressLaneItems); view.refresh(); accessibility.postScreenChangeNotification(); } } }); }
From source file:gov.wa.wsdot.mobile.client.activities.trafficmap.menu.traveltimes.TravelTimesActivity.java
License:Open Source License
private void createTopicsList(final TravelTimesView view, final boolean forceUpdate) { /** // w ww .j a v a 2 s. com * Check the cache table for the last time data was downloaded. If we are within * the allowed time period, don't sync, otherwise get fresh data from the server. */ dbService.getCacheLastUpdated(Tables.TRAVEL_TIMES, new ListCallback<GenericRow>() { @Override public void onFailure(DataServiceException error) { view.hideProgressIndicator(); } @Override public void onSuccess(List<GenericRow> result) { boolean shouldUpdate = true; if (!result.isEmpty()) { double now = System.currentTimeMillis(); double lastUpdated = result.get(0).getDouble(CachesColumns.CACHE_LAST_UPDATED); shouldUpdate = (Math.abs(now - lastUpdated) > (5 * 60000)); // Refresh every 5 minutes. } view.showProgressIndicator(); if (shouldUpdate || forceUpdate) { /** * Check the travel times table for any starred entries. If we find some, * save them to a list so we can re-star those after we flush the database. * */ dbService.getStarredTravelTimes(new ListCallback<GenericRow>() { @Override public void onFailure(DataServiceException error) { view.hideProgressIndicator(); } @Override public void onSuccess(List<GenericRow> result) { starred.clear(); if (!result.isEmpty()) { for (GenericRow row : result) { starred.add(row.getInt(TravelTimesColumns.TRAVEL_TIMES_ID)); } } JsonpRequestBuilder jsonp = new JsonpRequestBuilder(); // Set timeout for 30 seconds (30000 milliseconds) jsonp.setTimeout(30000); jsonp.requestObject(TRAVEL_TIMES_URL, new AsyncCallback<TravelTimes>() { @Override public void onFailure(Throwable caught) { view.hideProgressIndicator(); phoneGap.getNotification().alert("Can't load data. Check your connection.", new AlertCallback() { @Override public void onOkButtonClicked() { // TODO Auto-generated method stub } }, "Connection Error"); } @Override public void onSuccess(TravelTimes result) { if (result.getTravelTimes() != null) { travelTimesItems.clear(); TravelTimesItem item; int numItems = result.getTravelTimes().getItems().length(); for (int i = 0; i < numItems; i++) { item = new TravelTimesItem(); item.setDistance( result.getTravelTimes().getItems().get(i).getDistance()); item.setUpdated(result.getTravelTimes().getItems().get(i).getUpdated()); item.setTitle(result.getTravelTimes().getItems().get(i).getTitle()); item.setAverageTime( result.getTravelTimes().getItems().get(i).getAverage()); item.setRouteId(Integer.parseInt( result.getTravelTimes().getItems().get(i).getRouteId(), 10)); item.setCurrentTime( result.getTravelTimes().getItems().get(i).getCurrent()); if (starred.contains(Integer.parseInt( result.getTravelTimes().getItems().get(i).getRouteId(), 10))) { item.setIsStarred(1); } travelTimesItems.add(item); } // Purge existing mountain passes covered by incoming data dbService.deleteTravelTimes(new VoidCallback() { @Override public void onFailure(DataServiceException error) { view.hideProgressIndicator(); } @Override public void onSuccess() { // Bulk insert all the new travel times dbService.insertTravelTimes(travelTimesItems, new RowIdListCallback() { @Override public void onFailure(DataServiceException error) { view.hideProgressIndicator(); } @Override public void onSuccess(List<Integer> rowIds) { // Update the cache table with the time we did the update ArrayList<CacheItem> cacheItems = new ArrayList<CacheItem>(); cacheItems.add(new CacheItem(Tables.TRAVEL_TIMES, System.currentTimeMillis())); dbService.updateCachesTable(cacheItems, new VoidCallback() { @Override public void onFailure( DataServiceException error) { view.hideProgressIndicator(); } @Override public void onSuccess() { dbService.getTravelTimes( new ListCallback<GenericRow>() { @Override public void onFailure( DataServiceException error) { view.hideProgressIndicator(); } @Override public void onSuccess( List<GenericRow> result) { getTravelTimes(view, result); } }); } }); } }); } }); } } }); } }); } else { dbService.getTravelTimes(new ListCallback<GenericRow>() { @Override public void onFailure(DataServiceException error) { view.hideProgressIndicator(); } @Override public void onSuccess(List<GenericRow> result) { getTravelTimes(view, result); } }); } } }); }
From source file:gov.wa.wsdot.mobile.client.activities.trafficmap.seattleincidents.SeattleTrafficAlertsActivity.java
License:Open Source License
private void createTopicsList() { seattleIncidentItems.clear();/*from ww w.j a va 2s.c om*/ view.showProgressIndicator(); JsonpRequestBuilder jsonp = new JsonpRequestBuilder(); // Set timeout for 30 seconds (30000 milliseconds) jsonp.setTimeout(30000); jsonp.requestObject(SEATTLE_INCIDENTS_URL, new AsyncCallback<SeattleIncidentsFeed>() { @Override public void onFailure(Throwable caught) { view.hideProgressIndicator(); phoneGap.getNotification().alert("Can't load data. Check your connection.", new AlertCallback() { @Override public void onOkButtonClicked() { // TODO Auto-generated method stub } }, "Connection Error"); } @Override public void onSuccess(SeattleIncidentsFeed result) { SeattleIncidentItem item = null; if (result.getSeattleIncidents() != null) { int numEntries = result.getSeattleIncidents().getItems().length(); for (int i = 0; i < numEntries; i++) { item = new SeattleIncidentItem(); item.setCategory(result.getSeattleIncidents().getItems().get(i).getCategory()); item.setDescription(result.getSeattleIncidents().getItems().get(i).getDescription()); item.setLastUpdatedTime(dateFormat.format(new Date(Long.parseLong(result .getSeattleIncidents().getItems().get(i).getLastUpdatedTime().substring(6, 19))))); seattleIncidentItems.add(item); } view.hideProgressIndicator(); categorizeAlerts(); view.refresh(); } } }); }
From source file:gov.wa.wsdot.mobile.client.activities.trafficmap.trafficincidents.TrafficAlertsActivity.java
License:Open Source License
private void getHighwayAlerts() { /** /*from w w w . ja v a 2 s . co m*/ * Check the cache table for the last time data was downloaded. If we are within * the allowed time period, don't sync, otherwise get fresh data from the server. */ dbService.getCacheLastUpdated(Tables.HIGHWAY_ALERTS, new ListCallback<GenericRow>() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<GenericRow> result) { boolean shouldUpdate = true; if (!result.isEmpty()) { double now = System.currentTimeMillis(); double lastUpdated = result.get(0).getDouble(CachesColumns.CACHE_LAST_UPDATED); shouldUpdate = (Math.abs(now - lastUpdated) > (5 * 60000)); // Refresh every 5 minutes. } if (shouldUpdate) { try { JsonpRequestBuilder jsonp = new JsonpRequestBuilder(); // Set timeout for 30 seconds (30000 milliseconds) jsonp.setTimeout(30000); jsonp.requestObject(HIGHWAY_ALERTS_URL, new AsyncCallback<HighwayAlerts>() { @Override public void onFailure(Throwable caught) { } @Override public void onSuccess(HighwayAlerts result) { alertsToAdd.clear(); if (result.getAlerts() != null) { HighwayAlertItem item; int size = result.getAlerts().getItems().length(); for (int i = 0; i < size; i++) { item = new HighwayAlertItem(); item.setAlertId(result.getAlerts().getItems().get(i).getAlertID()); item.setHeadlineDescription( result.getAlerts().getItems().get(i).getHeadlineDescription()); item.setEventCategory( result.getAlerts().getItems().get(i).getEventCategory()); item.setStartLatitude(result.getAlerts().getItems().get(i) .getStartRoadwayLocation().getLatitude()); item.setStartLongitude(result.getAlerts().getItems().get(i) .getStartRoadwayLocation().getLongitude()); item.setLastUpdatedTime(dateFormat .format(new Date(Long.parseLong(result.getAlerts().getItems().get(i) .getLastUpdatedTime().substring(6, 19))))); alertsToAdd.add(item); } // Purge existing highway alerts covered by incoming data dbService.deleteHighwayAlerts(new VoidCallback() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess() { // Bulk insert all the new highway alerts dbService.insertHighwayAlerts(alertsToAdd, new RowIdListCallback() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<Integer> rowIds) { // Update the cache table with the time we did the update List<CacheItem> cacheItems = new ArrayList<CacheItem>(); cacheItems.add(new CacheItem(Tables.HIGHWAY_ALERTS, System.currentTimeMillis())); dbService.updateCachesTable(cacheItems, new VoidCallback() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess() { addAlerts(); } }); } }); } }); } } }); } catch (Exception e) { } } else { addAlerts(); } } }); }
From source file:gov.wa.wsdot.mobile.client.activities.trafficmap.TrafficMapActivity.java
License:Open Source License
private void getCameras() { /** //from www. ja v a 2 s . c o m * Check the cache table for the last time data was downloaded. If we are within * the allowed time period, don't sync, otherwise get fresh data from the server. */ dbService.getCacheLastUpdated(Tables.CAMERAS, new ListCallback<GenericRow>() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<GenericRow> result) { boolean shouldUpdate = true; if (!result.isEmpty()) { double now = System.currentTimeMillis(); double lastUpdated = result.get(0).getDouble(CachesColumns.CACHE_LAST_UPDATED); shouldUpdate = (Math.abs(now - lastUpdated) > (7 * 86400000)); // Refresh every 7 days. } view.showProgressIndicator(); if (shouldUpdate) { /** * Check the cameras table for any starred entries. If we find some, * save them to a list so we can re-star those after we flush the database. */ dbService.getStarredCameras(new ListCallback<GenericRow>() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<GenericRow> result) { starred.clear(); if (!result.isEmpty()) { for (GenericRow row : result) { starred.add(row.getInt(CamerasColumns.CAMERA_ID)); } } JsonpRequestBuilder jsonp = new JsonpRequestBuilder(); // Set timeout for 30 seconds (30000 milliseconds) jsonp.setTimeout(30000); jsonp.requestObject(CAMERAS_URL, new AsyncCallback<CamerasFeed>() { @Override public void onFailure(Throwable caught) { view.hideProgressIndicator(); phoneGap.getNotification().alert("Can't load data. Check your connection.", new AlertCallback() { @Override public void onOkButtonClicked() { // TODO Auto-generated method stub } }, "Connection Error"); } @Override public void onSuccess(CamerasFeed result) { if (result.getCameras() != null) { cameraItems.clear(); CameraItem item; int numCameras = result.getCameras().getItems().length(); for (int i = 0; i < numCameras; i++) { item = new CameraItem(); item.setCameraId(result.getCameras().getItems().get(i).getId()); item.setTitle(result.getCameras().getItems().get(i).getTitle()); item.setImageUrl(result.getCameras().getItems().get(i).getUrl()); item.setLatitude(result.getCameras().getItems().get(i).getLat()); item.setLongitude(result.getCameras().getItems().get(i).getLon()); item.setHasVideo(result.getCameras().getItems().get(i).getHasVideo()); item.setRoadName(result.getCameras().getItems().get(i).getRoadName()); if (starred.contains(result.getCameras().getItems().get(i).getId())) { item.setIsStarred(1); } cameraItems.add(item); } // Purge existing cameras covered by incoming data dbService.deleteCameras(new VoidCallback() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess() { // Bulk insert all the new cameras dbService.insertCameras(cameraItems, new RowIdListCallback() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<Integer> rowIds) { // Update the cache table with the time we did the update List<CacheItem> cacheItems = new ArrayList<CacheItem>(); cacheItems.add(new CacheItem(Tables.CAMERAS, System.currentTimeMillis())); dbService.updateCachesTable(cacheItems, new VoidCallback() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess() { view.hideProgressIndicator(); drawCamerasLayer(); } }); } }); } }); } } }); } }); } else { view.hideProgressIndicator(); drawCamerasLayer(); } } }); }
From source file:gov.wa.wsdot.mobile.client.activities.trafficmap.TrafficMapActivity.java
License:Open Source License
private void getHighwayAlerts() { /** // www. j a v a 2 s. c om * Check the cache table for the last time data was downloaded. If we are within * the allowed time period, don't sync, otherwise get fresh data from the server. */ dbService.getCacheLastUpdated(Tables.HIGHWAY_ALERTS, new ListCallback<GenericRow>() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<GenericRow> result) { boolean shouldUpdate = true; if (!result.isEmpty()) { double now = System.currentTimeMillis(); double lastUpdated = result.get(0).getDouble(CachesColumns.CACHE_LAST_UPDATED); shouldUpdate = (Math.abs(now - lastUpdated) > (5 * 60000)); // Refresh every 5 minutes. } if (shouldUpdate) { try { JsonpRequestBuilder jsonp = new JsonpRequestBuilder(); // Set timeout for 30 seconds (30000 milliseconds) jsonp.setTimeout(30000); jsonp.requestObject(HIGHWAY_ALERTS_URL, new AsyncCallback<HighwayAlerts>() { @Override public void onFailure(Throwable caught) { } @Override public void onSuccess(HighwayAlerts result) { highwayAlertItems.clear(); if (result.getAlerts() != null) { HighwayAlertItem item; int size = result.getAlerts().getItems().length(); for (int i = 0; i < size; i++) { item = new HighwayAlertItem(); item.setAlertId(result.getAlerts().getItems().get(i).getAlertID()); item.setHeadlineDescription( result.getAlerts().getItems().get(i).getHeadlineDescription()); item.setEventCategory( result.getAlerts().getItems().get(i).getEventCategory()); item.setPriority(result.getAlerts().getItems().get(i).getPriority()); item.setStartLatitude(result.getAlerts().getItems().get(i) .getStartRoadwayLocation().getLatitude()); item.setStartLongitude(result.getAlerts().getItems().get(i) .getStartRoadwayLocation().getLongitude()); item.setStartRoadName(result.getAlerts().getItems().get(i) .getStartRoadwayLocation().getRoadName()); item.setLastUpdatedTime(dateFormat .format(new Date(Long.parseLong(result.getAlerts().getItems().get(i) .getLastUpdatedTime().substring(6, 19))))); highwayAlertItems.add(item); } // Purge existing highway alerts covered by incoming data dbService.deleteHighwayAlerts(new VoidCallback() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess() { // Bulk insert all the new highway alerts dbService.insertHighwayAlerts(highwayAlertItems, new RowIdListCallback() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<Integer> rowIds) { // Update the cache table with the time we did the update List<CacheItem> cacheItems = new ArrayList<CacheItem>(); cacheItems.add(new CacheItem(Tables.HIGHWAY_ALERTS, System.currentTimeMillis())); dbService.updateCachesTable(cacheItems, new VoidCallback() { @Override public void onFailure( DataServiceException error) { } @Override public void onSuccess() { drawHighwayAlertsLayer(); } }); } }); } }); } } }); } catch (Exception e) { } } else { drawHighwayAlertsLayer(); } } }); }
From source file:gov.wa.wsdot.mobile.client.activities.trafficmap.traveltimes.TravelTimesActivity.java
License:Open Source License
private void createTopicsList(final TravelTimesView view) { /** /*from ww w. j ava 2 s .c om*/ * Check the cache table for the last time data was downloaded. If we are within * the allowed time period, don't sync, otherwise get fresh data from the server. */ dbService.getCacheLastUpdated(Tables.TRAVEL_TIMES, new ListCallback<GenericRow>() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<GenericRow> result) { boolean shouldUpdate = true; if (!result.isEmpty()) { double now = System.currentTimeMillis(); double lastUpdated = result.get(0).getDouble(CachesColumns.CACHE_LAST_UPDATED); shouldUpdate = (Math.abs(now - lastUpdated) > (5 * 60000)); // Refresh every 5 minutes. } view.showProgressIndicator(); if (shouldUpdate) { /** * Check the travel times table for any starred entries. If we find some, * save them to a list so we can re-star those after we flush the database. * */ dbService.getStarredTravelTimes(new ListCallback<GenericRow>() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<GenericRow> result) { starred.clear(); if (!result.isEmpty()) { for (GenericRow row : result) { starred.add(row.getInt(TravelTimesColumns.TRAVEL_TIMES_ID)); } } JsonpRequestBuilder jsonp = new JsonpRequestBuilder(); // Set timeout for 30 seconds (30000 milliseconds) jsonp.setTimeout(30000); jsonp.requestObject(TRAVEL_TIMES_URL, new AsyncCallback<TravelTimes>() { @Override public void onFailure(Throwable caught) { view.hideProgressIndicator(); phoneGap.getNotification().alert("Can't load data. Check your connection.", new AlertCallback() { @Override public void onOkButtonClicked() { // TODO Auto-generated method stub } }, "Connection Error"); } @Override public void onSuccess(TravelTimes result) { if (result.getTravelTimes() != null) { travelTimesItems.clear(); TravelTimesItem item; int numItems = result.getTravelTimes().getItems().length(); for (int i = 0; i < numItems; i++) { item = new TravelTimesItem(); item.setDistance( result.getTravelTimes().getItems().get(i).getDistance()); item.setUpdated(result.getTravelTimes().getItems().get(i).getUpdated()); item.setTitle(result.getTravelTimes().getItems().get(i).getTitle()); item.setAverageTime( result.getTravelTimes().getItems().get(i).getAverage()); item.setRouteId(Integer.parseInt( result.getTravelTimes().getItems().get(i).getRouteId(), 10)); item.setCurrentTime( result.getTravelTimes().getItems().get(i).getCurrent()); if (starred.contains(Integer.parseInt( result.getTravelTimes().getItems().get(i).getRouteId(), 10))) { item.setIsStarred(1); } travelTimesItems.add(item); } // Purge existing mountain passes covered by incoming data dbService.deleteTravelTimes(new VoidCallback() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess() { // Bulk insert all the new travel times dbService.insertTravelTimes(travelTimesItems, new RowIdListCallback() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<Integer> rowIds) { // Update the cache table with the time we did the update ArrayList<CacheItem> cacheItems = new ArrayList<CacheItem>(); cacheItems.add(new CacheItem(Tables.TRAVEL_TIMES, System.currentTimeMillis())); dbService.updateCachesTable(cacheItems, new VoidCallback() { @Override public void onFailure( DataServiceException error) { } @Override public void onSuccess() { dbService.getTravelTimes( new ListCallback<GenericRow>() { @Override public void onFailure( DataServiceException error) { } @Override public void onSuccess( List<GenericRow> result) { getTravelTimes(view, result); } }); } }); } }); } }); } } }); } }); } else { dbService.getTravelTimes(new ListCallback<GenericRow>() { @Override public void onFailure(DataServiceException error) { } @Override public void onSuccess(List<GenericRow> result) { getTravelTimes(view, result); } }); } } }); }
From source file:org.dataconservancy.dcs.access.client.presenter.ActivityPresenter.java
License:Apache License
@Override public void bind() { userService.checkSession(null, new AsyncCallback<UserSession>() { @Override/*from www. j ava2 s. c o m*/ public void onSuccess(UserSession result) { final String agentUrl = result.getRegistryId(); String queryUrl = SeadApp.roUrl + "resource/agentGraph/" + agentUrl; JsonpRequestBuilder rb = new JsonpRequestBuilder(); rb.setTimeout(100000); rb.requestObject(queryUrl, new AsyncCallback<JsProvGraph>() { @Override public void onFailure(Throwable caught) { new ErrorPopupPanel("Error:" + caught.getMessage()).show(); } @Override public void onSuccess(JsProvGraph agentGraph) { JsProvDocument document = agentGraph.getDocument(); try { String agentName = document.getAgentName(agentUrl); String agentId = document.getAgentId(agentUrl); JsArray<JsAssociatedWith> activities = document.getActivities(agentId); JsArray<JsGenerated> generatedBys = document.getSafeGeneratedBys(); JsArray<JsProvEntity> entities = document.getSafeEntities(); TreeMap<Date, List<HTML>> htmlMap = new TreeMap<Date, List<HTML>>( Collections.reverseOrder()); for (int i = 0; i < activities.length(); i++) { JsAssociatedWith activity = activities.get(i); String eventType = activity.getEventType(); String activityString; if (agentName == null || agentName.contains("null")) activityString = "You "; else activityString = "You (" + agentName + ") "; if (eventType == null) eventType = "an action"; if (eventType.equalsIgnoreCase("Curation-Workflow")) eventType = "Submission-Workflow"; activityString += " performed " + eventType + " on "; JsGenerated gen = null; String activityId = activity.getActivityId(); if (activityId == null) { // Window.alert("Continuing 1"); continue; } for (int k = 0; k < generatedBys.length(); k++) { if (generatedBys.get(k) == null || generatedBys.get(k).getActivityId() == null) continue; if (generatedBys.get(k).getActivityId().equalsIgnoreCase(activityId)) { gen = generatedBys.get(k); break; } } if (gen == null) { // Window.alert("Continuing 2"); continue; } String entityId = gen.getEntity(); JsProvEntity entity = null; // Window.alert(entityId); for (int k = 0; k < entities.length(); k++) { if (entities.get(k).getEntityId().equalsIgnoreCase(entityId)) { entity = entities.get(k); // Window.alert("matched"); break; } } if (entity == null) { // Window.alert("Continuing 3"); continue; } if (gen.getTimeString() == null || gen.getTimeString().length() < 2) { continue; } String timeString = gen.getTimeString().substring(0, gen.getTimeString().length() - 2); String entityLink = SeadState.ENTITY.toToken(entity.getEntityUrl()); if (activityString.contains("Curation") || activityString.contains("Submission")) entityLink = SeadState.CURATIONOBJECT.toToken(entity.getEntityUrl()); HTML html = new HTML("<font color=\"gray\">" + timeString + "</font>" + " " + activityString + "<a href=\"" + GWT.getModuleName().replace("sead_access", // "Sead_access.html?gwt.codesvr=127.0.0.1:9997" "") + "#" + entityLink + "\"><font color=\"steelblue\">" + entity.getEntityTitle() + "</font></a>" /*+" <a href=\""+ GWT.getModuleName().replace("sead_access", // "Sead_access.html?gwt.codesvr=127.0.0.1:9997" "" ) + "#"+ SeadState.PROV.toToken(entity.getEntityUrl())+ "\"><font color=\"steelblue\">" + "(View RO provenance) " + "</font></a>"*/, true); html.setStyleName("ActivityEntry"); DateTimeFormat format = DateTimeFormat.getFormat("yyyy-MM-dd HH:mm:ss"); List<HTML> htmlList; if (htmlMap.containsKey(format.parse(timeString))) htmlList = htmlMap.get(format.parse(timeString)); else htmlList = new ArrayList<HTML>(); htmlList.add(html); htmlMap.put(format.parse(timeString), htmlList); } display.getActivityContainer().clear(); //sort the htmlArray by Date if (htmlMap.values().size() == 0 || htmlMap.size() == 0) { HTML html = new HTML( "<font color=\"gray\"><center>" + "No Activity Yet" + "</center></font>", true); html.setStyleName("ActivityEntry"); display.getActivityContainer().add(html); } else for (List<HTML> htmlList : htmlMap.values()) for (HTML html : htmlList) display.getActivityContainer().add(html); } catch (Exception e) { display.getActivityContainer().clear(); HTML html = new HTML( "<font color=\"gray\"><center>" + "No Activity Yet" + "</center></font>", true); html.setStyleName("ActivityEntry"); display.getActivityContainer().add(html); } } }); } @Override public void onFailure(Throwable caught) { new ErrorPopupPanel("Error:" + caught.getMessage()).show(); } }); }
From source file:org.dataconservancy.dcs.access.client.presenter.EntityProvPresenter.java
License:Apache License
@Override public void bind() { userService.checkSession(null, new AsyncCallback<UserSession>() { @Override/*from w w w .j a va 2s . co m*/ public void onSuccess(UserSession result) { final String entityUrl = display.getEntityId(); // "http://seadva-test.d2i.indiana.edu:5667/sead-wf/entity/192410"; //"http%3A%2F%2Fseadva-test.d2i.indiana.edu%3A5667%2Fsead-wf%2Fentity%2F189712"; // "agent:f8477e5d-922f-41fb-9496-ba39ff218264"; // "agent:7dd76828-d615-4c76-9f95-427a1dcdf5f4"; // "agent:e4b2ea67-e775-498d-af9e-fcb1a0235f01"; // "agent:4f1e3f38-6fc4-47f8-8e15-4358f80b0986v"; // "agent:fb9c6de1-322b-467b-8a88-f6475c6fa0f1"; String queryUrl = SeadApp.roUrl + "resource/entityGraph/" + entityUrl.replace(":", "%3A").replace("/", "%2F"); // queryUrl = "http://seadva-test.d2i.indiana.edu/ro/resource/agentGraph/agent:fb9c6de1-322b-467b-8a88-f6475c6fa0f1"; JsonpRequestBuilder rb = new JsonpRequestBuilder(); rb.setTimeout(100000); rb.requestObject(queryUrl, new AsyncCallback<JsProvGraph>() { @Override public void onFailure(Throwable caught) { new ErrorPopupPanel("Error:" + caught.getMessage()).show(); } @Override public void onSuccess(JsProvGraph entityGraph) { //Get all activities related to this entity //Get all entities related to this entity //Get all activities related to these entities as well JsProvDocument document = entityGraph.getDocument(); JsProvEntity entity = document.getEntity( //"http://seadva-test.d2i.indiana.edu:5667/sead-wf/entity/189712" entityUrl); // Window.alert(entityId); UtilPopulate populate = new UtilPopulate(); populate.populateEntities(entity.getEntityId(), document); JsArrayString entitiesStr = populate.getEArrayString(); TreeMap<Date, HTML> htmlMap = new TreeMap<Date, HTML>(Collections.reverseOrder()); // JsArray<JsProvEntity> entities = document.getSafeEntities(); String relations = ""; for (int j = 0; j < entitiesStr.length(); j++) { String entityLink = ""; JsArray<JsGenerated> generatedBys = document .getGeneratedBysByEntity(entitiesStr.get(j)); // Window.alert(generatedBys.length()+" generatedBys"); JsArray<JsAssociatedWith> activities = document.getSafeActivities(); // Window.alert(activities.length()+" activities"); for (int i = 0; i < generatedBys.length(); i++) { JsGenerated gen = generatedBys.get(i); String activityId = gen.getActivityId(); JsAssociatedWith activity = null; // Window.alert("activityId = " +activityId); for (int k = 0; k < activities.length(); k++) { if (activities.get(k) == null || activities.get(k).getActivityId() == null) continue; if (activities.get(k).getActivityId().equalsIgnoreCase(activityId)) { activity = activities.get(k); break; } } if (activity == null) { Window.alert("Continuing 3"); continue; } if (gen.getTimeString() == null || gen.getTimeString().length() < 2) { Window.alert("Continuing 4"); continue; } String timeString = gen.getTimeString().substring(0, gen.getTimeString().length() - 2); String activityString = activity.getEventType(); if (activityString.contains("Curation-Workflow")) activityString = "Submission-Workflow"; entity = document.getEntityById(entitiesStr.get(j)); entityLink = "<a href=\"" + GWT.getModuleName().replace("sead_access", // "Sead_access.html?gwt.codesvr=127.0.0.1:9997" "") + "#" + SeadState.CURATIONOBJECT.toToken(entity.getEntityUrl()) + "\"><font color=\"steelblue\">" + entity.getEntityTitle() + "</font></a>"; HTML html = new HTML( "<font color=\"gray\">" + timeString + "</font>" + " " + activityString + " was performed on " + entityLink, true); html.setStyleName("ActivityEntry"); DateTimeFormat format = DateTimeFormat.getFormat("yyyy-MM-dd HH:mm:ss"); htmlMap.put(format.parse(timeString), html); } if (j > 0) relations += ", "; relations += entityLink + " "; } //sort the htmlArray by Date if (htmlMap.values().size() == 0 || htmlMap.size() == 0) { HTML html = new HTML( "<font color=\"gray\"><center>" + "No Activity Yet" + "</center></font>", true); html.setStyleName("ActivityEntry"); display.getActivityContainer().add(html); } else for (HTML html : htmlMap.values()) display.getActivityContainer().add(html); HTML html = new HTML("<font color=\"gray\">" + "Relations" + "</font>", true); html.setStyleName("ActivityEntry"); display.getActivityContainer().add(html); html = new HTML(relations + " represent lineage stages of a single RO.", true); display.getActivityContainer().add(html); } }); } @Override public void onFailure(Throwable caught) { new ErrorPopupPanel("Error:" + caught.getMessage()).show(); } }); }