List of usage examples for com.google.gwt.core.client JsArrayString length
public final native int length() ;
From source file:org.otalo.ao.client.model.BaseModel.java
License:Apache License
public Map<String, String> getFields() { Map<String, String> fieldMap = new HashMap<String, String>(); if (data != null) { JsArrayString array = data.keys(); for (int i = 0; i < array.length(); i++) { fieldMap.put(array.get(i), data.get(array.get(i))); }/*from w w w . ja va 2s .com*/ } return fieldMap; }
From source file:org.otalo.ao.client.widget.chlist.gwt.ChosenListBox.java
License:Apache License
/** * Return the values of all selected options in an array. * Usefull to know which options are selected in case of multiple ChosenListBox * @return//from w w w . j a v a 2 s . c om */ public String[] getValues() { if (!isMultipleSelect()) { return new String[] { getValue() }; } JsArrayString values = JsArrayString.createArray().cast(); NodeList<OptionElement> options = SelectElement.as(getElement()).getOptions(); for (int i = 0; i < options.getLength(); i++) { OptionElement option = options.getItem(i); if (option.isSelected()) { values.push(option.getValue()); } } String[] result = new String[values.length()]; for (int i = 0; i < values.length(); i++) { result[i] = values.get(i); } return result; }
From source file:org.pentaho.mantle.client.admin.PermissionsPanel.java
License:Open Source License
public void initializeActionBaseSecurityElements(String roleMappings) { JsLogicalRoleMap logicalRoleMap = (JsLogicalRoleMap) parseRoleMappings( JsonUtils.escapeJsonForEval(roleMappings)); if (logicalRoles.size() == 0) { for (int i = 0; i < logicalRoleMap.getLogicalRoles().length(); i++) { CheckBox permCB = new CheckBox(logicalRoleMap.getLogicalRoles().get(i).getLocalizedName()); permCB.addValueChangeHandler( new RolesValueChangeListener(logicalRoleMap.getLogicalRoles().get(i).getRoleName())); add(permCB);/*www. j av a 2s. c o m*/ logicalRoles.put(logicalRoleMap.getLogicalRoles().get(i).getLocalizedName(), new LogicalRoleInfo(logicalRoleMap.getLogicalRoles().get(i).getRoleName(), permCB)); } } for (int j = 0; j < logicalRoleMap.getRoleAssignments().length(); j++) { String roleName = logicalRoleMap.getRoleAssignments().get(j).getRoleName(); List<String> logicalRoles = new ArrayList<String>(); JsArrayString jsLogicalRoles = logicalRoleMap.getRoleAssignments().get(j).getAssignedLogicalRoles(); if (jsLogicalRoles != null) { for (int k = 0; k < jsLogicalRoles.length(); k++) { logicalRoles.add(jsLogicalRoles.get(k)); } } masterRoleMap.put(roleName, logicalRoles); if (logicalRoleMap.getRoleAssignments().get(j).isImmutable()) { immutableRoles.add(roleName); } } }
From source file:org.pentaho.mantle.client.commands.SaveCommand.java
License:Open Source License
protected void performOperation(boolean feedback) { final SolutionBrowserPanel navigatorPerspective = SolutionBrowserPanel.getInstance(); retrieveCachedValues(navigatorPerspective.getContentTabPanel().getCurrentFrame()); boolean forceReload = false; if (FileChooserDialog.getIsDirty()) { forceReload = true;/* ww w .ja va 2s. co m*/ WaitPopup.getInstance().setVisibleById(true, spinnerId); FileChooserDialog.setIsDirty(Boolean.FALSE); } RepositoryFileTreeManager.getInstance().fetchRepositoryFileTree(new AsyncCallback<RepositoryFileTree>() { public void onFailure(Throwable caught) { } public void onSuccess(RepositoryFileTree tree) { retrieveCachedValues(navigatorPerspective.getContentTabPanel().getCurrentFrame()); if (isSaveAs || name == null) { String fileDir = ""; if (path != null && !StringUtils.isEmpty(path)) { // If has extension if (path.endsWith(name)) { fileDir = path.substring(0, path.lastIndexOf("/")); } else { fileDir = path; } } WaitPopup.getInstance().setVisibleById(false, spinnerId); final FileChooserDialog dialog = new FileChooserDialog(FileChooserMode.SAVE, fileDir, tree, false, true, Messages.getString("save"), Messages.getString("save"), //$NON-NLS-1$//$NON-NLS-2$ navigatorPerspective.getSolutionTree().isShowHiddenFiles()); //$NON-NLS-3$ dialog.setSubmitOnEnter(MantleApplication.submitOnEnter); if (isSaveAs) { dialog.setTitle(Messages.getString("saveAs")); //$NON-NLS-1$ dialog.setText(Messages.getString("saveAs")); //$NON-NLS-1$ } else { dialog.setTitle(Messages.getString("save")); //$NON-NLS-1$ dialog.setText(Messages.getString("save")); //$NON-NLS-1$ } // TODO Uncomment the line below and delete the line after that once gwtwidets have been branched dialog.addFileChooserListener(new FileChooserListener() { public void dialogCanceled() { } @Override public void fileSelected(final RepositoryFile file, String filePath, String fileName, String title) { SaveCommand.this.type = SolutionFileInfo.Type.XACTION; SaveCommand.this.name = fileName; SaveCommand.this.path = filePath; tabName = name; if (tabName.indexOf("analysisview.xaction") != -1) { // trim off the analysisview.xaction from the localized-name tabName = tabName.substring(0, tabName.indexOf("analysisview.xaction") - 1); } JsArrayString extensions = getPossibleExtensions( navigatorPerspective.getContentTabPanel().getCurrentFrameElementId()); final String fileExtension = extensions.length() == 1 ? extensions.get(0) : null; if (dialog.doesSelectedFileExist(fileExtension)) { dialog.hide(); PromptDialogBox overWriteDialog = new PromptDialogBox( Messages.getString("question"), Messages.getString("yes"), //$NON-NLS-1$//$NON-NLS-2$ Messages.getString("no"), //$NON-NLS-1$ false, true); overWriteDialog .setContent(new Label(Messages.getString("fileExistsOverwrite"), false)); //$NON-NLS-1$ overWriteDialog.setCallback(new IDialogCallback() { public void okPressed() { if (fileExtension != null && tabName.endsWith(fileExtension)) { tabName = tabName.substring(0, tabName.lastIndexOf(fileExtension)); } doSaveAs(navigatorPerspective.getContentTabPanel() .getCurrentFrameElementId(), name, path, type, true); Window.setTitle(Messages.getString("productName") + " - " + name); //$NON-NLS-1$ //$NON-NLS-2$ FileChooserDialog.setIsDirty(Boolean.TRUE); persistFileInfoInFrame(); } public void cancelPressed() { dialog.show(); } }); overWriteDialog.center(); } else { // [Fix for PIR-833] if (file != null && !file.isFolder() && !fileName.equals(title) && filePath.endsWith(file.getName())) { SaveCommand.this.path = filePath.substring(0, filePath.lastIndexOf("/" + file.getName())); } doSaveAs(navigatorPerspective.getContentTabPanel().getCurrentFrameElementId(), name, path, type, true); Window.setTitle(Messages.getString("productName") + " - " + name); //$NON-NLS-1$ //$NON-NLS-2$ persistFileInfoInFrame(); // navigatorPerspective.addRecent(fullPathWithName, name); clearValues(); } } @Override public void fileSelectionChanged(RepositoryFile file, String filePath, String fileName, String title) { // TODO Auto-generated method stub } }); dialog.center(); } else { doSaveAs(navigatorPerspective.getContentTabPanel().getCurrentFrameElementId(), name, path, type, true); clearValues(); } WaitPopup.getInstance().setVisibleById(false, spinnerId); } }, forceReload, null, null, SolutionBrowserPanel.getInstance().getSolutionTree().isShowHiddenFiles()); }
From source file:org.pentaho.mantle.client.solutionbrowser.filelist.FilesListPanel.java
License:Open Source License
public void populateFilesList(SolutionBrowserPanel perspective, SolutionTree solutionTree, TreeItem item, JsArrayString filters) { filesList.clear();// www .ja va 2s . co m List<RepositoryFile> files; if (item == solutionTree.getTrashItem()) { // If we're populating from the trash then files = solutionTree.getTrashItems(); } else { files = new ArrayList<RepositoryFile>(); // Get the user object. RepositoryFileTree tree = (RepositoryFileTree) item.getUserObject(); // Since we are only listing the files here. Get to each item of the tree and get the file from it for (RepositoryFileTree treeItem : tree.getChildren()) { String fileName = treeItem.getFile().getName(); if (filters != null) { for (int i = 0; i < filters.length(); i++) { if (fileName.endsWith(filters.get(i))) { files.add(treeItem.getFile()); } } } } } // let's sort this list based on localized name Collections.sort(files, new RepositoryFileComparator()); // BISERVER-9599 - Custom Sort if (files != null) { int rowCounter = 0; for (RepositoryFile file : files) { if ((item == solutionTree.getTrashItem()) || (!file.isFolder() && (isShowHiddenFiles() || !file.isHidden()))) { // TODO Currently Old solution repository stores url type files. New repository does not have that // concept. What do we need to do here //String url = fileElement.getAttribute("url"); //$NON-NLS-1$ ContentTypePlugin plugin = PluginOptionsHelper.getContentTypePlugin(file.getName()); String icon = null; if (plugin != null) { icon = plugin.getFileIcon(); } if (item == solutionTree.getTrashItem() && file.isFolder()) { icon = "mantle/images/folderIcon.png"; //$NON-NLS-1$ } final FileItem fileLabel = new FileItem(file, this, PluginOptionsHelper.getEnabledOptions(file.getName()), true, icon); // BISERVER-2317: Request for more IDs for Mantle UI elements // set element id as the filename fileLabel.getElement().setId(file.getPath()); //$NON-NLS-1$ fileLabel.addFileSelectionChangedListener(toolbar); fileLabel.setWidth("100%"); //$NON-NLS-1$ try { perspective.getDragController().makeDraggable(fileLabel); } catch (Throwable e) { Throwable throwable = e; String text = "Uncaught exception: "; while (throwable != null) { StackTraceElement[] stackTraceElements = throwable.getStackTrace(); text += throwable.toString() + "\n"; for (int ii = 0; ii < stackTraceElements.length; ii++) { text += " at " + stackTraceElements[ii] + "\n"; } throwable = throwable.getCause(); if (throwable != null) { text += "Caused by: "; } } DialogBox dialogBox = new DialogBox(true); DOM.setStyleAttribute(dialogBox.getElement(), "backgroundColor", "#ABCDEF"); System.err.print(text); text = text.replaceAll(" ", " "); dialogBox.setHTML("<pre>" + text + "</pre>"); dialogBox.center(); } fileLabel.setRepositoryFile(file); filesList.setWidget(rowCounter++, 0, fileLabel); if (selectedFileItems != null && selectedFileItems.size() > 0) { for (FileItem fileItem : selectedFileItems) { if (fileItem.getRepositoryFile().equals(fileLabel.getRepositoryFile())) { if (file.isHidden()) { fileLabel.setStyleName("hiddenFileLabelSelected"); } else { fileLabel.setStyleName("fileLabelSelected"); //$NON-NLS-1$ } selectedFileItems.add(fileLabel); // if we do not break this loop, it will go forever! (we added an item) break; } } } else { if (file.isHidden()) { fileLabel.setStyleName("hiddenFileLabel"); //$NON-NLS-1$ } else { fileLabel.setStyleName("fileLabel"); //$NON-NLS-1$ } } } } } }
From source file:org.pentaho.mantle.client.solutionbrowser.fileproperties.SelectUserOrRoleDialog.java
License:Open Source License
public void fetchAllRoles(final ArrayList<String> existing, final Document fileInfo) { try {/*from w w w . j a v a2 s. co m*/ final String url = GWT.getHostPageBaseURL() + "api/userrolelist/permission-roles"; //$NON-NLS-1$ RequestBuilder requestBuilder = new RequestBuilder(RequestBuilder.GET, url); // This header is required to force Internet Explorer to not cache values from the GET response. requestBuilder.setHeader("If-Modified-Since", "01 Jan 1970 00:00:00 GMT"); requestBuilder.setHeader("accept", "application/json"); requestBuilder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable caught) { MessageDialogBox dialogBox = new MessageDialogBox(Messages.getString("error"), //$NON-NLS-1$ Messages.getString("couldNotGetRoles"), false, false, true); //$NON-NLS-1$ dialogBox.center(); } public void onResponseReceived(Request request, Response response) { JsArrayString roles = parseRolesJson(JsonUtils.escapeJsonForEval(response.getText())); // filter out existing rolesListBox.clear(); PermissionsPanel permPanel = new PermissionsPanel(null); for (int i = 0; i < roles.length(); i++) { String role = roles.get(i); if (!existing.contains(role)) { rolesListBox.addItem(role); } else { if (!permPanel.getNames(fileInfo, 1).contains(role) && permPanel.getNames(fileInfo, 0).contains(role)) { //we have equal user/role pair(s) and user already in existing list rolesListBox.addItem(role); } } } } }); } catch (RequestException e) { Window.alert(e.getMessage()); } }
From source file:org.pentaho.mantle.client.solutionbrowser.fileproperties.SelectUserOrRoleDialog.java
License:Open Source License
public void fetchAllUsers(final ArrayList<String> existing, final Document fileInfo) { try {//from ww w .j a v a 2 s .c om final String url = GWT.getHostPageBaseURL() + "api/userrolelist/permission-users"; //$NON-NLS-1$ RequestBuilder requestBuilder = new RequestBuilder(RequestBuilder.GET, url); // This header is required to force Internet Explorer to not cache values from the GET response. requestBuilder.setHeader("If-Modified-Since", "01 Jan 1970 00:00:00 GMT"); requestBuilder.setHeader("accept", "application/json"); requestBuilder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable caught) { MessageDialogBox dialogBox = new MessageDialogBox(Messages.getString("error"), //$NON-NLS-1$ Messages.getString("couldNotGetUsers"), false, false, true); //$NON-NLS-1$ dialogBox.center(); } public void onResponseReceived(Request request, Response response) { JsArrayString users = parseUsersJson(JsonUtils.escapeJsonForEval(response.getText())); // filter out existing usersListBox.clear(); PermissionsPanel permPanel = new PermissionsPanel(null); for (int i = 0; i < users.length(); i++) { String user = users.get(i); if (!existing.contains(user)) { usersListBox.addItem(user); } else { if (!permPanel.getNames(fileInfo, 0).contains(user) && permPanel.getNames(fileInfo, 1).contains(user)) { //we have equal user/role pair(s) and role already in existing list usersListBox.addItem(user); } } } } }); } catch (RequestException e) { Window.alert(e.getMessage()); } }
From source file:org.pentaho.mantle.client.workspace.JsJobTrigger.java
License:Open Source License
/** * Converts javascript integer arrays that were stored as quoted numbers in the JSON as an int[] array. * /*from w ww.j a v a 2 s . c om*/ * @param jsArrayString * = Json Array with the integer elements quoted * @return int array */ public final int[] convertJsArrayStringToIntArray(JsArrayString jsArrayString) { if (jsArrayString == null) { return null; } else { int[] intArray = new int[jsArrayString.length()]; StringTokenizer tokenizer = new StringTokenizer(jsArrayString.toString(), ","); for (int i = 0; i < tokenizer.countTokens(); i++) { try { String value = tokenizer.tokenAt(i); intArray[i] = Integer.parseInt(value); } catch (Throwable t) { Window.alert(t.getMessage()); } } return intArray; } }
From source file:org.rstudio.core.client.Functional.java
License:Open Source License
public static String find(JsArrayString array, Predicate<String> predicate) { for (int i = 0, n = array.length(); i < n; i++) if (predicate.test(array.get(i))) return array.get(i); return null;//from w w w. j a v a 2 s.c om }
From source file:org.rstudio.core.client.js.JsUtil.java
License:Open Source License
public static Iterable<String> asIterable(final JsArrayString array) { return new Iterable<String>() { @Override//from www . j av a 2 s . com public Iterator<String> iterator() { return new Iterator<String>() { int i = 0; @Override public boolean hasNext() { return array.length() > i; } @Override public String next() { return array.get(i++); } @Override public void remove() { throw new UnsupportedOperationException(); } }; } }; }