List of usage examples for com.google.gwt.http.client Response SC_NOT_ACCEPTABLE
int SC_NOT_ACCEPTABLE
To view the source code for com.google.gwt.http.client Response SC_NOT_ACCEPTABLE.
Click Source Link
From source file:org.pentaho.mantle.client.commands.RestoreFileCommand.java
License:Open Source License
@Override public void execute() { final SolutionFileActionEvent event = new SolutionFileActionEvent(); event.setAction(this.getClass().getName()); String temp = ""; if (repositoryFiles != null) { for (RepositoryFile repoFile : repositoryFiles) { temp += repoFile.getId() + ","; //$NON-NLS-1$ }// www . j a v a 2 s . co m } // Add file names from js temp = temp + fileList; // remove trailing "," temp = temp.substring(0, temp.length() - 1); final String filesList = temp; String deleteFilesURL = contextURL + "api/repo/files/restore"; //$NON-NLS-1$ RequestBuilder deleteFilesRequestBuilder = new RequestBuilder(RequestBuilder.PUT, deleteFilesURL); deleteFilesRequestBuilder.setHeader("Content-Type", "text/plain"); //$NON-NLS-1$//$NON-NLS-2$ deleteFilesRequestBuilder.setHeader("If-Modified-Since", "01 Jan 1970 00:00:00 GMT"); try { deleteFilesRequestBuilder.sendRequest(filesList, new RequestCallback() { @Override public void onError(Request request, Throwable exception) { MessageDialogBox dialogBox = new MessageDialogBox(Messages.getString("cannotRestore"), //$NON-NLS-1$ Messages.getString("couldNotRestoreItem", type), //$NON-NLS-1$ false, false, true); dialogBox.center(); event.setMessage("cannotRestore"); EventBusUtil.EVENT_BUS.fireEvent(event); } @Override public void onResponseReceived(final Request request, final Response response) { if (response.getStatusCode() == Response.SC_OK) { new RefreshRepositoryCommand().execute(false); event.setMessage("Success"); EventBusUtil.EVENT_BUS.fireEvent(event); } else if (response.getStatusCode() == Response.SC_CONFLICT || response.getStatusCode() == Response.SC_NOT_ACCEPTABLE) { final int restoreResponseStatusCode = response.getStatusCode(); final String userHomeDirUrl = GWT.getHostPageBaseURL() + "api/session/userWorkspaceDir"; final RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, userHomeDirUrl); try { // Get user home folder string builder.sendRequest("", new RequestCallback() { @Override public void onResponseReceived(final Request request, final Response response) { if (response.getStatusCode() == 200) { // API returns /user/home_folder/workspace String userHomeFolderPath = response.getText().replaceAll("/workspace", ""); performRestoreToHomeFolder(filesList, restoreResponseStatusCode, userHomeFolderPath, event); } } @Override public void onError(Request request, Throwable exception) { showErrorDialogBox(event); } }); } catch (RequestException e) { showErrorDialogBox(event); } } else { MessageDialogBox dialogBox = new MessageDialogBox(Messages.getString("cannotRestore"), //$NON-NLS-1$ Messages.getString("couldNotRestoreItem", type), //$NON-NLS-1$ false, false, true, Messages.getString("close")); dialogBox.center(); event.setMessage("Success"); FileChooserDialog.setIsDirty(Boolean.TRUE); setBrowseRepoDirty(Boolean.TRUE); EventBusUtil.EVENT_BUS.fireEvent(event); } } }); } catch (RequestException e) { showErrorDialogBox(event); } }
From source file:org.pentaho.mantle.client.commands.RestoreFileCommand.java
License:Open Source License
private void performRestoreToHomeFolder(final String filesList, final int restoreResponseStatusCode, final String userHomeFolderPath, final SolutionFileActionEvent event) { final String encodedUserHomeFolderPath = SolutionBrowserPanel.pathToId(userHomeFolderPath); String fileListDescription = "files"; // if there is one file if (filesList.split(",").length == 1) { fileListDescription = "file"; }/*from w w w .j a v a2 s. c o m*/ HTML messageTextBox = new HTML(); String cannotRestoreToOrigFolder = Messages.getString("cannotRestoreToOriginFolder", fileListDescription); String restoreToHomeFolder = Messages.getString("restoreToHomeFolder", userHomeFolderPath); messageTextBox.setHTML(cannotRestoreToOrigFolder + "<br> <br>" + restoreToHomeFolder + "<br>"); final PromptDialogBox restoreFileWarningDialogBox = new PromptDialogBox( Messages.getString("couldNotWriteToFolder"), "Restore File", "Cancel", true, true); restoreFileWarningDialogBox.setContent(messageTextBox); final IDialogCallback callback = new IDialogCallback() { public void cancelPressed() { restoreFileWarningDialogBox.hide(); } public void okPressed() { // We can't write to origin file folder, and there are // files in homeFolder with same names if (restoreResponseStatusCode == Response.SC_CONFLICT) { final OverwritePromptDialog overwriteDialog = new OverwritePromptDialog(); final IDialogCallback callback = new IDialogCallback() { public void cancelPressed() { event.setMessage("Cancel"); overwriteDialog.hide(); } public void okPressed() { String restoreFilesUrl = contextURL + "api/repo/files/restore?overwriteMode=" //$NON-NLS-1$ + overwriteDialog.getOverwriteMode(); RequestBuilder builder = new RequestBuilder(RequestBuilder.PUT, restoreFilesUrl); try { builder.sendRequest(filesList, new RequestCallback() { @Override public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() == Response.SC_OK) { new RefreshRepositoryCommand().execute(false); event.setMessage("Success"); EventBusUtil.EVENT_BUS.fireEvent(event); } else { showErrorDialogBox(event); } } @Override public void onError(Request request, Throwable exception) { showErrorDialogBox(event); } }); } catch (RequestException e) { showErrorDialogBox(event); } } }; overwriteDialog.setCallback(callback); overwriteDialog.center(); } else if (restoreResponseStatusCode == Response.SC_NOT_ACCEPTABLE) { String moveFilesURL = contextURL + "api/repo/files/" + encodedUserHomeFolderPath + "/move"; RequestBuilder builder = new RequestBuilder(RequestBuilder.PUT, moveFilesURL); try { builder.sendRequest(filesList, new RequestCallback() { @Override public void onResponseReceived(Request request, Response response) { new RefreshRepositoryCommand().execute(false); event.setMessage("Success"); EventBusUtil.EVENT_BUS.fireEvent(event); } @Override public void onError(Request request, Throwable exception) { showErrorDialogBox(event); } }); } catch (RequestException e) { showErrorDialogBox(event); } } } }; restoreFileWarningDialogBox.setCallback(callback); restoreFileWarningDialogBox.center(); }