List of usage examples for com.google.gwt.view.client MultiSelectionModel MultiSelectionModel
public MultiSelectionModel()
From source file:client.ui.views.series.TableSeriesView.java
License:Open Source License
@Override public void onUpdate(List<SeriesManager.Row> rows, SortedSet<Integer> years, SeriesManager.Ordering ordering) { super.onUpdate(rows, years, ordering); table = new Table(rows.size()); container.clear();/* w w w .j a v a 2 s . com*/ container.add(table); table.addColumn(CountryNameColumn.get(), CountryNameColumn.HEADER); for (Integer year : years) { table.addColumn(YearColumn.get(year), year.toString()); } table.addColumnSortHandler(this); updateColumnSortList(table.getColumnSortList(), ordering); ListDataProvider<SeriesManager.Row> provider = new ListDataProvider<SeriesManager.Row>(); provider.addDataDisplay(table); provider.setList(rows); selectionModel = new MultiSelectionModel<SeriesManager.Row>(); table.setSelectionModel(selectionModel, null); for (SeriesManager.Row row : rows) { selectionModel.setSelected(row, row.isSelected()); } }
From source file:com.chinarewards.gwt.license.client.user.view.UserSearchWidget.java
private void buildTable() { resultTable = new ListCellTable<UserVo>(); resultTable.setWidth(ViewConstants.page_width); resultTable.setPageSize(ViewConstants.per_page_number); pager = new EltNewPager(TextLocation.CENTER); pager.setDisplay(resultTable);//from w w w. j a v a2s . c o m MultiSelectionModel<UserVo> selectionModel = new MultiSelectionModel<UserVo>(); resultTable.setSelectionModel(selectionModel); initTableColumns(selectionModel); resultTable.setRowCount(0); result.clear(); resultpage.clear(); result.add(resultTable); resultpage.add(pager); }
From source file:com.gsr.myschool.front.client.web.application.inbox.InboxView.java
License:Apache License
@Inject public InboxView(final Binder uiBinder, final SharedMessageBundle sharedMessageBundle, final InboxCellFactory inboxCellFactory, final InboxListStyle listStyle) { this.dataProvider = new ListDataProvider<InboxProxy>(); this.multipleSelectionModel = new MultiSelectionModel<InboxProxy>(); this.inboxTable = new CellList<InboxProxy>(inboxCellFactory.create(setupShowDetails()), listStyle); initWidget(uiBinder.createAndBindUi(this)); dataProvider.addDataDisplay(inboxTable); inboxTable.setSelectionModel(multipleSelectionModel); inboxTable.setEmptyListWidget(new EmptyResult(sharedMessageBundle.noResultFound(), AlertType.WARNING)); }
From source file:com.qualogy.qafe.gwt.client.component.improved.QCellTable.java
License:Apache License
public QCellTable(DataGridGVO gvo, String uuid, String parent) { setSize(gvo.getWidth(), gvo.getHeight()); String context = gvo.getContext(); String window = gvo.getWindow(); String component = gvo.getId(); Column<DataContainerGVO, String>[] columns = null; if (gvo != null) { if (gvo.getColumns() != null) { int gvoColSize = gvo.getColumns().length; columns = new Column[gvoColSize]; for (int i = 0; i < gvoColSize; i++) { final String columnName = gvo.getColumns()[i].getFieldName(); String contentType = gvo.getColumns()[i].getContent(); if (CONTENT_STRING.equals(contentType)) { if (gvo.getColumns()[i].getComponent() != null) { ComponentGVO c = gvo.getColumns()[i].getComponent(); if (c instanceof ButtonGVO) { ButtonGVO bc = (ButtonGVO) c; columns[i] = new QButtonColumn<DataContainerGVO>(uuid, context, window, component, gvo.getColumns()[i].getId(), parent, gvo.getColumns()[i].getTooltip(), gvo.getColumns()[i], bc) { @Override public String getValue(DataContainerGVO map) { return map.getDataMap().get(columnName) != null ? map.getDataMap().get(columnName).toString() : null; }/* w w w . ja v a 2 s . c o m*/ }; } } else { columns[i] = new TextColumn<DataContainerGVO>() { @Override public String getValue(DataContainerGVO map) { return map.getDataMap().get(columnName) != null ? map.getDataMap().get(columnName).toString() : null; } }; } } else if (CONTENT_LINK.equals(contentType)) { columns[i] = new LinkColumn<DataContainerGVO>(uuid, context, window, component, gvo.getColumns()[i].getId(), parent, gvo.getColumns()[i].getTooltip(), gvo.getColumns()[i]) { @Override public String getValue(DataContainerGVO map) { return map.getDataMap().get(columnName) != null ? map.getDataMap().get(columnName).toString() : null; } }; } if (columns[i] != null) { if (gvo.getColumns()[i].getSortable() != null && gvo.getColumns()[i].getSortable().booleanValue()) { //columns[i]. } addColumn(columns[i], gvo.getColumns()[i].getDisplayname()); } } } ListDataProvider<DataContainerGVO> adapter = new ListDataProvider<DataContainerGVO>(); list = adapter.getList(); if (gvo.getPageSize() != null) { if (gvo.getPageSize() > 0) { setPageSize(gvo.getPageSize()); } } SelectionModel<DataContainerGVO> selectionModel = null; if (gvo.getMultipleSelect() != null && gvo.getMultipleSelect().booleanValue()) { selectionModel = new MultiSelectionModel<DataContainerGVO>(); } else { selectionModel = new SingleSelectionModel<DataContainerGVO>(); } setSelectionModel(selectionModel); adapter.addDataDisplay(this); setPageStart(0); } }
From source file:cz.muni.fi.pa165.methanolmanager.frontend.client.bottles.BottlesView.java
private void initBottlesTable() { bottlesTable.addColumn(new TextColumn<BottleDto>() { @Override/*from w ww .j a v a2s . c om*/ public String getValue(BottleDto bottle) { return bottle.getId().toString(); } }, new TextHeader(applicationConstants.id())); bottlesTable.addColumn(new TextColumn<BottleDto>() { @Override public String getValue(BottleDto bottle) { return bottle.getName(); } }, new TextHeader(applicationConstants.name())); bottlesTable.addColumn(new TextColumn<BottleDto>() { @Override public String getValue(BottleDto bottle) { return bottle.getStoreName(); } }, new TextHeader(applicationConstants.storeName())); bottlesTable.addColumn(new TextColumn<BottleDto>() { @Override public String getValue(BottleDto bottle) { return bottle.getMakeName(); } }, new TextHeader(applicationConstants.makeName())); bottlesTable.addColumn(new TextColumn<BottleDto>() { @Override public String getValue(BottleDto bottle) { return DateTimeFormat.getFormat(DateTimeFormat.PredefinedFormat.DATE_MEDIUM) .format(bottle.getProductionDate()); } }, new TextHeader(applicationConstants.productionDate())); bottlesTable.addColumn(new TextColumn<BottleDto>() { @Override public String getValue(BottleDto bottle) { Date stampDate = bottle.getStampDate(); if (bottle.isToxic()) { return applicationConstants.toxic(); } if (stampDate == null) { return applicationConstants.notStamped(); } String date = DateTimeFormat.getFormat(DateTimeFormat.PredefinedFormat.DATE_MEDIUM) .format(stampDate); return applicationMessages.stampedOn(date); } }, new TextHeader(applicationConstants.bottleState())); selectionModel = new MultiSelectionModel<>(); bottlesTable.setSelectionModel(selectionModel); final SimplePager pager = new SimplePager(); bottlesTable.setLoadingIndicator(new ProgressBar()); bottlesTable.setEmptyTableWidget(new Label(applicationConstants.noBottlesYet())); pager.setDisplay(bottlesTable); }
From source file:org.cee.webreader.client.content.MultiSelectionCellListPresenter.java
License:Apache License
private void initSelectionModel(final CellList<EntityContent<K>> cellList, final MultiSelectListModel<K> listModel) { selectionModel = new MultiSelectionModel<EntityContent<K>>(); cellList.setSelectionModel(selectionModel, new SelectionEventManager<EntityContent<K>>()); selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override/*from w w w .j av a2 s . c om*/ public void onSelectionChange(SelectionChangeEvent event) { listModel.setSelections(EntityContent.getKeys(selectionModel.getSelectedSet())); } }); }
From source file:org.cloudcoder.app.client.view.CourseAdminProblemListView.java
License:Open Source License
@Override public void activate(final Session session, SubscriptionRegistrar subscriptionRegistrar) { this.session = session; session.subscribe(Session.Event.ADDED_OBJECT, this, subscriptionRegistrar); // Set selection model. // When a Problem is selected, it will be added to the Session. this.selectionModel = new MultiSelectionModel<ProblemAndModule>(); selectionModel.addSelectionChangeHandler(new Handler() { @Override/*from w w w . j a v a2 s.com*/ public void onSelectionChange(SelectionChangeEvent event) { Set<ProblemAndModule> problemModuleSet = selectionModel.getSelectedSet(); Problem[] problems = getProblemsFromProblemAndModule(problemModuleSet); if (problems != null) { session.add(problems); if (problems.length == 1) { // If there's only one problem, add it by itself to the session // This makes the options that operate on a single problem work better session.add(problems[0]); } } } }); grid.setSelectionModel(selectionModel); // Force loading of problems in course. // This avoids the problem that if a module in a course was selected // in the courses/problems page, some of the problems may not be // in the session (because they weren't in the selected module). CourseSelection courseSelection = session.get(CourseSelection.class); Course course = courseSelection.getCourse(); loadProblems(session, course); }
From source file:org.cruxframework.crux.widgets.client.listshuttle.ListShuttle.java
License:Apache License
public ListShuttle(List<T> availableItems, List<T> selectedItems) { listShuttle = new FlowPanel(); //First Column FlowPanel toSelectColumn = new FlowPanel(); toSelectColumn.setStyleName("toSelectColumn"); toSelectColumnFieldset = new CaptionPanel(); toSelectColumnFieldset.setStyleName("toSelectColumnFieldset"); availableCellList = new CellList<T>(new BeanCell()); availableCellList.setSelectionModel(new MultiSelectionModel<T>()); //Middle Column FlowPanel buttonsColumn = new FlowPanel(); buttonsColumn.setStyleName("buttonsColumn"); addSelectedButton = new Button(); addSelectedButton.setText(">"); addAllButton = new Button(); addAllButton.setText(">>"); removeSelectedButton = new Button(); removeSelectedButton.setText("<"); removeAllButton = new Button(); removeAllButton.setText("<<"); //Last Column FlowPanel selectedColumn = new FlowPanel(); selectedColumn.setStyleName("selectedColumn"); selectedColumnFieldset = new CaptionPanel(); selectedColumnFieldset.setStyleName("selectedColumnFieldset"); selectedCellList = new CellList<T>(new BeanCell()); selectedCellList.setSelectionModel(new MultiSelectionModel<T>()); //Attaching columns toSelectColumnFieldset.add(availableCellList); selectedColumnFieldset.add(selectedCellList); toSelectColumn.add(toSelectColumnFieldset); selectedColumn.add(selectedColumnFieldset); buttonsColumn.add(addSelectedButton); buttonsColumn.add(addAllButton);//from ww w. j av a 2s. co m buttonsColumn.add(removeSelectedButton); buttonsColumn.add(removeAllButton); listShuttle.add(toSelectColumn); listShuttle.add(buttonsColumn); listShuttle.add(selectedColumn); //Initializing Component setAvailableItems(availableItems); setSelectedItems(selectedItems); bindHandlers(); initWidget(listShuttle); setStyleName("crux-ListShuttle"); }
From source file:org.dataconservancy.dcs.access.client.presenter.MediciIngestPresenter.java
License:Apache License
void addGetPubHandler() { getPub.addClickHandler(new ClickHandler() { @Override/* w ww . j a v a 2s. c o m*/ public void onClick(ClickEvent event) { final StatusPopupPanel mediciWait = new StatusPopupPanel("Retrieving", "wait", false); mediciWait.show(); existingFileSets = new HashMap<String, FileTable>(); previousSelectedFiles = new HashMap<String, List<FileNode>>(); int selected = ir.getSelectedIndex(); final String instance = ir.getValue(selected); mediciService.getAcrInstances(new AsyncCallback<List<MediciInstance>>() { @Override public void onSuccess(List<MediciInstance> result) { for (MediciInstance ins : result) if (ins.getTitle().equalsIgnoreCase(instance)) sparqlEndpoint = ins; RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, SeadApp.ACRCOMMON + "?instance=" + URL.encodeQueryString(sparqlEndpoint.getTitle()) + "&" + "query=" + URL.encodeQueryString(Query.PROPOSED_FOR_PUBLICATION.getTitle())); rb.setHeader("Content-type", "application/x-www-form-urlencoded"); try { Request response = rb.sendRequest(null, new RequestCallback() { @Override public void onError(Request request, Throwable exception) { Window.alert("Failed"); } @Override public void onResponseReceived(Request request, Response response) { String json = response.getText(); mediciService.parseJson(json, new AsyncCallback<Map<String, String>>() { @Override public void onSuccess(Map<String, String> result) { leftPanel.clear(); JsonpRequestBuilder rb = new JsonpRequestBuilder(); rb.setTimeout(100000); mediciWait.hide(); last = result.size() - 1; final FlexTable grid = new FlexTable(); grid.setWidth("100%"); grid.setHeight("100%"); final Iterator it = result.entrySet().iterator(); while (it.hasNext()) { final Map.Entry pair = (Map.Entry) it.next(); final String dName = (String) pair.getValue(); flagHyperlink = 0; String tagRetrieveUrl = SeadApp.accessurl + SeadApp.queryPath + "?q=resourceValue:" + "(" + URL.encodeQueryString( ((String) pair.getKey()).replace(":", "\\:")) + ")"; rb.requestObject(tagRetrieveUrl, new AsyncCallback<JsSearchResult>() { public void onFailure(Throwable caught) { Util.reportInternalError( "Matching collection in VA failed", caught); } public void onSuccess(JsSearchResult result) { // if(result.matches().length()==0||sparqlEndpoint.equals("http://sead.ncsa.illinois.edu/acr/resteasy/sparql")) // { dataset = Util.label( dName.substring(dName.lastIndexOf("/") + 1), "Hyperlink"); flagHyperlink = 1; // } // else // flagHyperlink =0; if (flagHyperlink == 1) { dataset.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { mediciService.restartIngest( (String) pair.getKey(), SeadApp.tmpHome, new AsyncCallback<CheckPointDetail>() { @Override public void onFailure( Throwable caught) { Window.alert( "Error in estimating reingest scenario. \n" + caught.getMessage()); } @Override public void onSuccess( final CheckPointDetail result) { if (!result .isCheckPointed()) { final StatusPopupPanel collectionWait = new StatusPopupPanel( "Querying for BagIt Bag", "bag", false); collectionWait .show(); final MultiSelectionModel<CollectionNode> selectionModel = new MultiSelectionModel<CollectionNode>(); mediciService .getBag((String) pair .getKey(), sparqlEndpoint, SeadApp.bagIturl, SeadApp.tmpHome, new AsyncCallback<String>() { @Override public void onSuccess( final String bagPath) { collectionWait .setValue( "Converting to SEAD SIP", "wait"); final Timer getSIPTimer = new Timer() { @Override public void run() { String tempguid = null; if (((String) pair .getKey()) .contains( "/")) tempguid = ((String) pair .getKey()) .split("/")[((String) pair .getKey()) .split("/").length - 1]; else tempguid = ((String) pair .getKey()) .split(":")[((String) pair .getKey()) .split(":").length - 1]; final String guid = tempguid; mediciService .getSipFromBag( bagPath, SeadApp.tmpHome + guid + "_sip.xml", SeadApp.bagIturl, new AsyncCallback<String>() { @Override public void onSuccess( String result) { mediciService .getFileNos( new AsyncCallback<Integer>() { @Override public void onFailure( Throwable caught) { Window.alert( "Failed:" + caught.getMessage()); } @Override public void onSuccess( Integer size) { if (size > Constants.MAX) { Window.alert( "This collection has more than " + Constants.MAX + " files.\n" + "Hence preview is not possible. But you can start the ingest"); if (collectionWait .isShowing()) collectionWait .hide(); getPub.setEnabled( false); cloudCopy .setEnabled( true); mdCb.setEnabled( true); ingestButton .setEnabled( true); ir.setEnabled( false); ir.setStyleName( "greyFont"); getPub.setStyleName( "greyFont"); cloudCopy .setStyleName( "greenFont"); mdCb.setStyleName( "greenFont"); ingestButton .setStyleName( "greenFont"); ingestButton .addClickHandler( new ClickHandler() { @Override public void onClick( ClickEvent event) { ingestButton .setEnabled( false); cloudCopy .setEnabled( false); ir.setEnabled( false); getPub.setEnabled( true); String rootMediciId = (String) pair .getKey(); AsyncCallback<Void> vaModelCb = new AsyncCallback<Void>() { @Override public void onSuccess( Void result) { mediciService .addMetadata( metadataSrc, SeadApp.tmpHome + guid + "_sip", new AsyncCallback<Void>() { @Override public void onSuccess( Void result) { mediciService .splitSip( SeadApp.tmpHome + guid + "_sip", new AsyncCallback<Integer>() { @Override public void onSuccess( Integer result) { n = result; l++; if (l <= n) { mediciService .generateWfInstanceId( new AsyncCallback<String>() { @Override public void onSuccess( final String wfInstanceId) { UserServiceAsync user = GWT .create(UserService.class); user.checkSession( null, new AsyncCallback<UserSession>() { @Override public void onFailure( Throwable caught) { // TODO Auto-generated method stub } @Override public void onSuccess( UserSession result) { mediciService .submitMultipleSips( SeadApp.deposit_endpoint + "sip", (String) pair .getKey(), sparqlEndpoint, SeadApp.tmpHome + guid + "_sip", wfInstanceId, null, l, n, "", "", false, GWT.getModuleBaseURL(), SeadApp.tmpHome, false, false, new AsyncCallback<String>() { @Override public void onSuccess( final String result) { l = -1; final Label notify = Util .label("!", "Notification"); notify.addClickHandler( new ClickHandler() { @Override public void onClick( ClickEvent event) { StatusPopupPanel mediciWait = new StatusPopupPanel( "Retrieving", "done", false); MessagePopupPanel popUpPanel = new MessagePopupPanel( result, "done", true); popUpPanel .show(); nPanel.remove( notify); } }); nPanel.add( notify); } @Override public void onFailure( Throwable caught) { Window.alert( "Workflow failed."); } }); } }); } @Override public void onFailure( Throwable caught) { // TODO Auto-generated method stub } }); } else { Window.alert( "This dataset is already ingested. Please clear checkpointing if you want to rerun the workflow"); } } @Override public void onFailure( Throwable caught) { // TODO Auto-generated method stub } }); } @Override public void onFailure( Throwable caught) { // TODO Auto-generated method stub } }); } @Override public void onFailure( Throwable caught) { // TODO Auto-generated method stub } }; mediciService .toVAmodel( rootMediciId, rootMediciId, sparqlEndpoint, SeadApp.tmpHome, vaModelCb); } }); coverRightPanel .setVisible( true); } else { mediciService .getRelations( new AsyncCallback<DatasetRelation>() { @Override public void onFailure( Throwable caught) { Window.alert( "Failed:" + caught.getMessage()); } @Override public void onSuccess( final DatasetRelation relations) { display.getDatasetLbl() .setText( "Browse Collection and sub-Collections"); display.getFileLbl() .setText( "Browse Files"); TreeViewModel model = new CollectionTreeViewModel( selectionModel, relations, (String) pair .getKey()); CellTree.Resources resource = GWT .create(TreeResources.class); CellTree tree = new CellTree( model, null, resource); //collection select CollectionSelectEvent .register( EVENT_BUS, new CollectionSelectEvent.Handler() { public void onMessageReceived( final CollectionSelectEvent event) { rightPanel .clear(); rightPanel .add(getFiles( relations .getDuAttrMap(), relations .getFileAttrMap(), event.getCollection() .getId(), event.getValue())); } }); //collection click CollectionClickEvent .register( EVENT_BUS, new CollectionClickEvent.Handler() { public void onMessageReceived( final CollectionClickEvent event) { if (existingFileSets .containsKey( event.getCollection() .getId())) { rightPanel .clear(); rightPanel .add(existingFileSets .get(event .getCollection() .getId()).cellTable); } else { rightPanel .clear(); rightPanel .add(getFiles( relations .getDuAttrMap(), relations .getFileAttrMap(), event.getCollection() .getId(), false)); } } }); //collection passive click CollectionPassiveSelectEvent .register( EVENT_BUS, new CollectionPassiveSelectEvent.Handler() { public void onMessageReceived( final CollectionPassiveSelectEvent event) { CellTable files; if (existingFileSets .containsKey( event.getCollection() .getId())) { files = existingFileSets .get(event .getCollection() .getId()).cellTable; for (String file : relations .getDuAttrMap() .get(event .getCollection() .getId()) .getSub() .get(SubType.File)) { files.getSelectionModel() .setSelected( (FileNode) relations .getFileAttrMap() .get(file), event.getValue()); } } else { files = (CellTable) getFiles( relations .getDuAttrMap(), relations .getFileAttrMap(), event.getCollection() .getId(), event.getValue()); } } }); collectionWait .hide(); leftPanel .clear(); leftPanel .add(tree); if (collectionWait .isShowing()) collectionWait .hide(); getPub.setEnabled( false); cloudCopy .setEnabled( true); mdCb.setEnabled( true); ingestButton .setEnabled( true); ir.setEnabled( false); ir.setStyleName( "greyFont"); getPub.setStyleName( "greyFont"); cloudCopy .setStyleName( "greenFont"); mdCb.setStyleName( "greenFont"); ingestButton .setStyleName( "greenFont"); ingestButton .addClickHandler( new ClickHandler() { @Override public void onClick( ClickEvent event) { ingestButton .setEnabled( false); cloudCopy .setEnabled( false); ir.setEnabled( false); getPub.setEnabled( true); String rootMediciId = (String) pair .getKey(); CollectionNode root = relations .getDuAttrMap() .get(rootMediciId); AsyncCallback<Void> vaModelCb = new AsyncCallback<Void>() { @Override public void onSuccess( Void result) { mediciService .addMetadata( metadataSrc, SeadApp.tmpHome + guid + "_sip", new AsyncCallback<Void>() { @Override public void onSuccess( Void result) { String tempguid = null; if (((String) pair .getKey()) .contains( "/")) tempguid = ((String) pair .getKey()) .split("/")[((String) pair .getKey()) .split("/").length - 1]; else tempguid = ((String) pair .getKey()) .split(":")[((String) pair .getKey()) .split(":").length - 1]; final String guid = tempguid; mediciService .splitSip( SeadApp.tmpHome + guid + "_sip", new AsyncCallback<Integer>() { @Override public void onSuccess( Integer result) { n = result; l++; // Window.alert("Starting ingest of dataset");//. We already have the cached SIP for this dataset."); mediciService .generateWfInstanceId( new AsyncCallback<String>() { @Override public void onSuccess( String wfInstanceId) { //Open a status panel that self queries the database for changes WfEventRefresherPanel eventRefresher = new WfEventRefresherPanel( submitterId, wfInstanceId); eventRefresher .show(); mediciService .submitMultipleSips( SeadApp.deposit_endpoint + "sip", (String) pair .getKey(), sparqlEndpoint, SeadApp.tmpHome + guid + "_sip", wfInstanceId, null, l, n, "", "", false, GWT.getModuleBaseURL(), SeadApp.tmpHome, false, false, new AsyncCallback<String>() { @Override public void onSuccess( final String result) { l = -1; final Label notify = Util .label("!", "Notification"); notify.addClickHandler( new ClickHandler() { @Override public void onClick( ClickEvent event) { MessagePopupPanel popUpPanel = new MessagePopupPanel( result, "done", true); popUpPanel .show(); nPanel.remove( notify); } }); // nPanel.add(notify); } @Override public void onFailure( Throwable caught) { } }); } @Override public void onFailure( Throwable caught) { } }); } @Override public void onFailure( Throwable caught) { Window.alert( "Failed. \n" + caught.getMessage()); } }); } @Override public void onFailure( Throwable caught) { Window.alert( "Failed. \n" + caught.getMessage()); } }); } @Override public void onFailure( Throwable caught) { Window.alert( "Failed. \n" + caught.getMessage()); } }; mediciService .toVAmodel( rootMediciId, rootMediciId, sparqlEndpoint, SeadApp.tmpHome, vaModelCb); } }); coverRightPanel .setVisible( true); } }); } } }); } @Override public void onFailure( Throwable caught) { Window.alert( "Failed:" + caught.getMessage()); } }); } }; getSIPTimer .schedule( 5000); } @Override public void onFailure( Throwable caught) { Window.alert( "Failed:" + caught.getMessage()); } }); } else { //restart ingest n = result .getNumSplitSIPs(); String[] arr = result .getResumeSipPath() .split("_"); int sipNumber = Integer .parseInt( arr[arr.length - 1].split( "\\.")[0]); l = sipNumber; if (l <= n) { Window.alert( "Starting reingest of dataset. We already have the cached SIP for this dataset."); mediciService .generateWfInstanceId( new AsyncCallback<String>() { @Override public void onSuccess( String wfInstanceId) { mediciService .submitMultipleSips( SeadApp.deposit_endpoint + "sip", null, sparqlEndpoint, result.getResumeSipPath() .replace( "_" + l + ".xml", ""), wfInstanceId, result.getPreviousStatusUrls(), l, n, "", "", false, GWT.getModuleBaseURL(), SeadApp.tmpHome, false, false, new AsyncCallback<String>() { @Override public void onSuccess( final String result) { l = -1; final Label notify = Util .label("!", "Notification"); notify.addClickHandler( new ClickHandler() { @Override public void onClick( ClickEvent event) { MessagePopupPanel popUpPanel = new MessagePopupPanel( result, "done", true); popUpPanel .show(); nPanel.remove( notify); } }); nPanel.add( notify); } @Override public void onFailure( Throwable caught) { } }); //Open a status panel that self queries the database for changes WfEventRefresherPanel eventRefresher = new WfEventRefresherPanel( submitterId, wfInstanceId); eventRefresher .show(); } @Override public void onFailure( Throwable caught) { } }); } else { Window.alert( "This dataset is already ingested. Please clear checkpointing if you want to rerun the workflow."); } //MediciIngestPresenter.EVENT_BUS.fireEvent(new SubmitSipEvent( // result.getResumeSipPath().replace("_"+l+".xml", ""), // result.getPreviousStatusUrls() // )); } } }); } }); } int index; if (flagHyperlink == 1) { index = first; first++; } else { index = last; last--; } grid.setWidget(index, 0, dataset); grid.getRowFormatter().setStyleName(index, "DatasetsRow"); } }); it.remove(); // avoids a ConcurrentModificationException } leftPanel.add(grid); } @Override public void onFailure(Throwable caught) { // TODO Auto-generated method stub } }); } }); } catch (RequestException e) { // TODO Auto-generated catch block e.printStackTrace(); } } @Override public void onFailure(Throwable caught) { // TODO Auto-generated method stub } }); } }); }
From source file:org.dataconservancy.dcs.access.client.presenter.MediciIngestPresenter.java
License:Apache License
public Widget getFiles(Map<String, CollectionNode> dusMap, Map<String, FileNode> filesMap, final String selectedCollection, Boolean valForAll) { List<String> files = dusMap.get(selectedCollection).getSub().get(SubType.File); final FileTable fileTable = new FileTable(); CellTable.Resources resource = GWT.create(TableResources.class); fileTable.cellTable = new CellTable<FileNode>(files.size(), resource); fileTable.cellTable.setWidth("100%", true); fileTable.selectionFileModel = new MultiSelectionModel<FileNode>(); fileTable.cellTable.setSelectionModel(fileTable.selectionFileModel, DefaultSelectionEventManager.<FileNode>createCheckboxManager()); fileTable.selectionFileModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override//from www . j av a 2 s . co m public void onSelectionChange(SelectionChangeEvent event) { // TODO Auto-generated method stub List<FileNode> nowSelected = new ArrayList<FileNode>(fileTable.selectionFileModel.getSelectedSet()); List<FileNode> previousSelected; List<FileNode> tempSelected; if (previousSelectedFiles.containsKey(selectedCollection)) previousSelected = previousSelectedFiles.get(selectedCollection); else previousSelected = new ArrayList<FileNode>(); if (nowSelected.size() > previousSelected.size()) { tempSelected = new ArrayList<FileNode>(nowSelected); tempSelected.removeAll(previousSelected); } else { tempSelected = new ArrayList<FileNode>(previousSelected); tempSelected.removeAll(nowSelected); } previousSelectedFiles.put(selectedCollection, nowSelected); //update previous selected files // if(tempSelected.size()==1)//uncomment these 2 statements later // MediciIngestPresenter.EVENT_BUS.fireEvent(new FileSelectEvent(tempSelected.get(0),true)); //(FileNode)selectionFileModel.getSelectedSet().toArray()[0],true)); } }); Column<FileNode, Boolean> checkColumn = new Column<FileNode, Boolean>(new CheckboxCell(true, false)) { @Override public Boolean getValue(FileNode object) { // Get the value from the selection model. return fileTable.selectionFileModel.isSelected(object); } }; fileTable.cellTable.addColumn(checkColumn, SafeHtmlUtils.fromSafeConstant("<br/>")); fileTable.cellTable.setColumnWidth(checkColumn, 40, Unit.PX); // First name. final Resources resources = GWT.create(Resources.class); Column<FileNode, ImageResource> imageColumn = new Column<FileNode, ImageResource>(new ImageResourceCell()) { @Override public ImageResource getValue(FileNode object) { return resources.file(); } }; fileTable.cellTable.addColumn(imageColumn, SafeHtmlUtils.fromSafeConstant("<br/>")); fileTable.cellTable.setColumnWidth(imageColumn, 40, Unit.PX); Column<FileNode, String> firstNameColumn = new Column<FileNode, String>(new EditTextCell()) { @Override public String getValue(FileNode object) { return object.getTitle(); } }; fileTable.cellTable.addColumn(firstNameColumn); List<FileNode> fileNodes = new ArrayList<FileNode>(); for (String file : files) { FileNode node = filesMap.get(file); fileNodes.add(node); fileTable.selectionFileModel.setSelected(node, valForAll); } ListDataProvider<FileNode> dataProvider = new ListDataProvider<FileNode>(fileNodes); dataProvider.addDataDisplay(fileTable.cellTable); existingFileSets.put(selectedCollection, fileTable); return fileTable.cellTable; }