http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/HeliumRestApi.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/HeliumRestApi.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/HeliumRestApi.java index 4e5f180..1c04500 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/HeliumRestApi.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/HeliumRestApi.java @@ -19,11 +19,18 @@ package org.apache.zeppelin.rest; import com.google.gson.Gson; import com.google.gson.JsonParseException; import com.google.gson.reflect.TypeToken; + +import javax.inject.Inject; +import org.apache.commons.io.FileUtils; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.File; import java.io.IOException; import java.util.List; import java.util.Map; -import javax.inject.Inject; + import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; @@ -31,8 +38,7 @@ import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.QueryParam; import javax.ws.rs.core.Response; -import org.apache.commons.io.FileUtils; -import org.apache.commons.lang3.StringUtils; + import org.apache.zeppelin.helium.Helium; import org.apache.zeppelin.helium.HeliumPackage; import org.apache.zeppelin.helium.HeliumPackageSearchResult; @@ -40,10 +46,10 @@ import org.apache.zeppelin.notebook.Note; import org.apache.zeppelin.notebook.Notebook; import org.apache.zeppelin.notebook.Paragraph; import org.apache.zeppelin.server.JsonResponse; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -/** Helium Rest Api. */ +/** + * Helium Rest Api. + */ @Path("/helium") @Produces("application/json") public class HeliumRestApi { @@ -55,11 +61,13 @@ public class HeliumRestApi { @Inject public HeliumRestApi(Helium helium, Notebook notebook) { - this.helium = helium; + this.helium = helium; this.notebook = notebook; } - /** Get all packages info. */ + /** + * Get all packages info. + */ @GET @Path("package") public Response getAllPackageInfo() { @@ -71,7 +79,9 @@ public class HeliumRestApi { } } - /** Get all enabled packages info. */ + /** + * Get all enabled packages info. + */ @GET @Path("enabledPackage") public Response getAllEnabledPackageInfo() { @@ -83,18 +93,20 @@ public class HeliumRestApi { } } - /** Get single package info. */ + /** + * Get single package info. + */ @GET @Path("package/{packageName}") public Response getSinglePackageInfo(@PathParam("packageName") String packageName) { if (StringUtils.isEmpty(packageName)) { - return new JsonResponse(Response.Status.BAD_REQUEST, "Can't get package info for empty name") - .build(); + return new JsonResponse(Response.Status.BAD_REQUEST, + "Can't get package info for empty name").build(); } try { - return new JsonResponse<>(Response.Status.OK, "", helium.getSinglePackageInfo(packageName)) - .build(); + return new JsonResponse<>( + Response.Status.OK, "", helium.getSinglePackageInfo(packageName)).build(); } catch (RuntimeException e) { logger.error(e.getMessage(), e); return new JsonResponse(Response.Status.INTERNAL_SERVER_ERROR, e.getMessage()).build(); @@ -103,8 +115,8 @@ public class HeliumRestApi { @GET @Path("suggest/{noteId}/{paragraphId}") - public Response suggest( - @PathParam("noteId") String noteId, @PathParam("paragraphId") String paragraphId) { + public Response suggest(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId) { Note note = notebook.getNote(noteId); if (note == null) { return new JsonResponse(Response.Status.NOT_FOUND, "Note " + noteId + " not found").build(); @@ -121,14 +133,13 @@ public class HeliumRestApi { logger.error(e.getMessage(), e); return new JsonResponse(Response.Status.INTERNAL_SERVER_ERROR, e.getMessage()).build(); } + } @POST @Path("load/{noteId}/{paragraphId}") - public Response load( - @PathParam("noteId") String noteId, - @PathParam("paragraphId") String paragraphId, - String heliumPackage) { + public Response load(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId, String heliumPackage) { Note note = notebook.getNote(noteId); if (note == null) { return new JsonResponse(Response.Status.NOT_FOUND, "Note " + noteId + " not found").build(); @@ -141,9 +152,8 @@ public class HeliumRestApi { } HeliumPackage pkg = HeliumPackage.fromJson(heliumPackage); try { - return new JsonResponse<>( - Response.Status.OK, "", helium.getApplicationFactory().loadAndRun(pkg, paragraph)) - .build(); + return new JsonResponse<>(Response.Status.OK, "", + helium.getApplicationFactory().loadAndRun(pkg, paragraph)).build(); } catch (RuntimeException e) { logger.error(e.getMessage(), e); return new JsonResponse(Response.Status.INTERNAL_SERVER_ERROR, e.getMessage()).build(); @@ -153,12 +163,12 @@ public class HeliumRestApi { @GET @Path("bundle/load/{packageName}") @Produces("text/javascript") - public Response bundleLoad( - @QueryParam("refresh") String refresh, @PathParam("packageName") String packageName) { + public Response bundleLoad(@QueryParam("refresh") String refresh, + @PathParam("packageName") String packageName) { if (StringUtils.isEmpty(packageName)) { return new JsonResponse( - Response.Status.BAD_REQUEST, "Can't get bundle due to empty package name") - .build(); + Response.Status.BAD_REQUEST, + "Can't get bundle due to empty package name").build(); } HeliumPackageSearchResult psr = null; @@ -233,12 +243,12 @@ public class HeliumRestApi { } try { - Map<String, Map<String, Object>> config = helium.getSpellConfig(packageName); + Map<String, Map<String, Object>> config = + helium.getSpellConfig(packageName); if (config == null) { - return new JsonResponse( - Response.Status.BAD_REQUEST, "Failed to find enabled package for " + packageName) - .build(); + return new JsonResponse(Response.Status.BAD_REQUEST, + "Failed to find enabled package for " + packageName).build(); } return new JsonResponse<>(Response.Status.OK, config).build(); @@ -262,20 +272,21 @@ public class HeliumRestApi { @GET @Path("config/{packageName}/{artifact}") - public Response getPackageConfig( - @PathParam("packageName") String packageName, @PathParam("artifact") String artifact) { + public Response getPackageConfig(@PathParam("packageName") String packageName, + @PathParam("artifact") String artifact) { if (StringUtils.isEmpty(packageName) || StringUtils.isEmpty(artifact)) { - return new JsonResponse(Response.Status.BAD_REQUEST, "package name or artifact is empty") - .build(); + return new JsonResponse(Response.Status.BAD_REQUEST, + "package name or artifact is empty" + ).build(); } try { - Map<String, Map<String, Object>> config = helium.getPackageConfig(packageName, artifact); + Map<String, Map<String, Object>> config = + helium.getPackageConfig(packageName, artifact); if (config == null) { - return new JsonResponse( - Response.Status.BAD_REQUEST, "Failed to find package for " + artifact) - .build(); + return new JsonResponse(Response.Status.BAD_REQUEST, + "Failed to find package for " + artifact).build(); } return new JsonResponse<>(Response.Status.OK, config).build(); @@ -287,25 +298,26 @@ public class HeliumRestApi { @POST @Path("config/{packageName}/{artifact}") - public Response updatePackageConfig( - @PathParam("packageName") String packageName, - @PathParam("artifact") String artifact, - String rawConfig) { + public Response updatePackageConfig(@PathParam("packageName") String packageName, + @PathParam("artifact") String artifact, String rawConfig) { if (StringUtils.isEmpty(packageName) || StringUtils.isEmpty(artifact)) { - return new JsonResponse(Response.Status.BAD_REQUEST, "package name or artifact is empty") - .build(); + return new JsonResponse(Response.Status.BAD_REQUEST, + "package name or artifact is empty" + ).build(); } try { - Map<String, Object> packageConfig = - gson.fromJson(rawConfig, new TypeToken<Map<String, Object>>() {}.getType()); + Map<String, Object> packageConfig = gson.fromJson( + rawConfig, new TypeToken<Map<String, Object>>(){}.getType()); helium.updatePackageConfig(artifact, packageConfig); return new JsonResponse<>(Response.Status.OK, packageConfig).build(); } catch (JsonParseException e) { logger.error(e.getMessage(), e); - return new JsonResponse(Response.Status.BAD_REQUEST, e.getMessage()).build(); + return new JsonResponse(Response.Status.BAD_REQUEST, + e.getMessage()).build(); } catch (IOException | RuntimeException e) { - return new JsonResponse(Response.Status.INTERNAL_SERVER_ERROR, e.getMessage()).build(); + return new JsonResponse(Response.Status.INTERNAL_SERVER_ERROR, + e.getMessage()).build(); } } @@ -324,8 +336,8 @@ public class HeliumRestApi { @POST @Path("order/visualization") public Response setVisualizationPackageOrder(String orderedPackageNameList) { - List<String> orderedList = - gson.fromJson(orderedPackageNameList, new TypeToken<List<String>>() {}.getType()); + List<String> orderedList = gson.fromJson( + orderedPackageNameList, new TypeToken<List<String>>(){}.getType()); try { helium.setVisualizationPackageOrder(orderedList); return new JsonResponse(Response.Status.OK).build();
http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/InterpreterRestApi.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/InterpreterRestApi.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/InterpreterRestApi.java index afe3b4f..abf7de8 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/InterpreterRestApi.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/InterpreterRestApi.java @@ -18,20 +18,7 @@ package org.apache.zeppelin.rest; import com.google.common.collect.Maps; -import java.io.IOException; -import java.util.List; -import java.util.Map; import javax.inject.Inject; -import javax.validation.constraints.NotNull; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; import org.apache.commons.lang.exception.ExceptionUtils; import org.apache.zeppelin.annotation.ZeppelinApi; import org.apache.zeppelin.dep.Repository; @@ -55,7 +42,23 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.sonatype.aether.repository.RemoteRepository; -/** Interpreter Rest API. */ +import javax.validation.constraints.NotNull; +import javax.ws.rs.DELETE; +import javax.ws.rs.GET; +import javax.ws.rs.POST; +import javax.ws.rs.PUT; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; +import javax.ws.rs.Produces; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import java.io.IOException; +import java.util.List; +import java.util.Map; + +/** + * Interpreter Rest API. + */ @Path("/interpreter") @Produces("application/json") public class InterpreterRestApi { @@ -76,7 +79,9 @@ public class InterpreterRestApi { this.notebookServer = notebookWsServer; } - /** List all interpreter settings. */ + /** + * List all interpreter settings. + */ @GET @Path("setting") @ZeppelinApi @@ -84,7 +89,9 @@ public class InterpreterRestApi { return new JsonResponse<>(Status.OK, "", interpreterSettingManager.get()).build(); } - /** Get a setting. */ + /** + * Get a setting. + */ @GET @Path("setting/{settingId}") @ZeppelinApi @@ -98,9 +105,8 @@ public class InterpreterRestApi { } } catch (NullPointerException e) { logger.error("Exception in InterpreterRestApi while creating ", e); - return new JsonResponse<>( - Status.INTERNAL_SERVER_ERROR, e.getMessage(), ExceptionUtils.getStackTrace(e)) - .build(); + return new JsonResponse<>(Status.INTERNAL_SERVER_ERROR, e.getMessage(), + ExceptionUtils.getStackTrace(e)).build(); } } @@ -114,18 +120,15 @@ public class InterpreterRestApi { @ZeppelinApi public Response newSettings(String message) { try { - NewInterpreterSettingRequest request = NewInterpreterSettingRequest.fromJson(message); + NewInterpreterSettingRequest request = + NewInterpreterSettingRequest.fromJson(message); if (request == null) { return new JsonResponse<>(Status.BAD_REQUEST).build(); } - InterpreterSetting interpreterSetting = - interpreterSettingManager.createNewSetting( - request.getName(), - request.getGroup(), - request.getDependencies(), - request.getOption(), - request.getProperties()); + InterpreterSetting interpreterSetting = interpreterSettingManager + .createNewSetting(request.getName(), request.getGroup(), request.getDependencies(), + request.getOption(), request.getProperties()); logger.info("new setting created with {}", interpreterSetting.getId()); return new JsonResponse<>(Status.OK, "", interpreterSetting).build(); } catch (IOException e) { @@ -142,18 +145,19 @@ public class InterpreterRestApi { logger.info("Update interpreterSetting {}", settingId); try { - UpdateInterpreterSettingRequest request = UpdateInterpreterSettingRequest.fromJson(message); - interpreterSettingManager.setPropertyAndRestart( - settingId, request.getOption(), request.getProperties(), request.getDependencies()); + UpdateInterpreterSettingRequest request = + UpdateInterpreterSettingRequest.fromJson(message); + interpreterSettingManager + .setPropertyAndRestart(settingId, request.getOption(), request.getProperties(), + request.getDependencies()); } catch (InterpreterException e) { logger.error("Exception in InterpreterRestApi while updateSetting ", e); return new JsonResponse<>(Status.NOT_FOUND, e.getMessage(), ExceptionUtils.getStackTrace(e)) .build(); } catch (IOException e) { logger.error("Exception in InterpreterRestApi while updateSetting ", e); - return new JsonResponse<>( - Status.INTERNAL_SERVER_ERROR, e.getMessage(), ExceptionUtils.getStackTrace(e)) - .build(); + return new JsonResponse<>(Status.INTERNAL_SERVER_ERROR, e.getMessage(), + ExceptionUtils.getStackTrace(e)).build(); } InterpreterSetting setting = interpreterSettingManager.get(settingId); if (setting == null) { @@ -162,7 +166,9 @@ public class InterpreterRestApi { return new JsonResponse<>(Status.OK, "", setting).build(); } - /** Remove interpreter setting. */ + /** + * Remove interpreter setting. + */ @DELETE @Path("setting/{settingId}") @ZeppelinApi @@ -172,7 +178,9 @@ public class InterpreterRestApi { return new JsonResponse(Status.OK).build(); } - /** Restart interpreter setting. */ + /** + * Restart interpreter setting. + */ @PUT @Path("setting/restart/{settingId}") @ZeppelinApi @@ -201,7 +209,9 @@ public class InterpreterRestApi { return new JsonResponse<>(Status.OK, "", setting).build(); } - /** List all available interpreters by group. */ + /** + * List all available interpreters by group. + */ @GET @ZeppelinApi public Response listInterpreter() { @@ -209,7 +219,9 @@ public class InterpreterRestApi { return new JsonResponse<>(Status.OK, "", m).build(); } - /** List of dependency resolving repositories. */ + /** + * List of dependency resolving repositories. + */ @GET @Path("repository") @ZeppelinApi @@ -229,18 +241,13 @@ public class InterpreterRestApi { public Response addRepository(String message) { try { Repository request = Repository.fromJson(message); - interpreterSettingManager.addRepository( - request.getId(), - request.getUrl(), - request.isSnapshot(), - request.getAuthentication(), - request.getProxy()); + interpreterSettingManager.addRepository(request.getId(), request.getUrl(), + request.isSnapshot(), request.getAuthentication(), request.getProxy()); logger.info("New repository {} added", request.getId()); } catch (Exception e) { logger.error("Exception in InterpreterRestApi while adding repository ", e); - return new JsonResponse<>( - Status.INTERNAL_SERVER_ERROR, e.getMessage(), ExceptionUtils.getStackTrace(e)) - .build(); + return new JsonResponse<>(Status.INTERNAL_SERVER_ERROR, e.getMessage(), + ExceptionUtils.getStackTrace(e)).build(); } return new JsonResponse(Status.OK).build(); } @@ -259,14 +266,15 @@ public class InterpreterRestApi { interpreterSettingManager.removeRepository(repoId); } catch (Exception e) { logger.error("Exception in InterpreterRestApi while removing repository ", e); - return new JsonResponse<>( - Status.INTERNAL_SERVER_ERROR, e.getMessage(), ExceptionUtils.getStackTrace(e)) - .build(); + return new JsonResponse<>(Status.INTERNAL_SERVER_ERROR, e.getMessage(), + ExceptionUtils.getStackTrace(e)).build(); } return new JsonResponse(Status.OK).build(); } - /** Get available types for property */ + /** + * Get available types for property + */ @GET @Path("property/types") public Response listInterpreterPropertyTypes() { http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/LoginRestApi.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/LoginRestApi.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/LoginRestApi.java index 74abe56..f13c222 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/LoginRestApi.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/LoginRestApi.java @@ -17,13 +17,27 @@ package org.apache.zeppelin.rest; import com.google.gson.Gson; +import javax.inject.Inject; +import org.apache.shiro.authc.AuthenticationException; +import org.apache.shiro.authc.AuthenticationToken; +import org.apache.shiro.authc.IncorrectCredentialsException; +import org.apache.shiro.authc.LockedAccountException; +import org.apache.shiro.authc.UnknownAccountException; +import org.apache.shiro.authc.UsernamePasswordToken; +import org.apache.shiro.realm.Realm; +import org.apache.shiro.subject.Subject; +import org.apache.zeppelin.conf.ZeppelinConfiguration; +import org.apache.zeppelin.notebook.Notebook; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.text.ParseException; import java.util.Collection; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.Map; -import javax.inject.Inject; + import javax.ws.rs.FormParam; import javax.ws.rs.GET; import javax.ws.rs.POST; @@ -34,27 +48,18 @@ import javax.ws.rs.core.Cookie; import javax.ws.rs.core.HttpHeaders; import javax.ws.rs.core.Response; import javax.ws.rs.core.Response.Status; -import org.apache.shiro.authc.AuthenticationException; -import org.apache.shiro.authc.AuthenticationToken; -import org.apache.shiro.authc.IncorrectCredentialsException; -import org.apache.shiro.authc.LockedAccountException; -import org.apache.shiro.authc.UnknownAccountException; -import org.apache.shiro.authc.UsernamePasswordToken; -import org.apache.shiro.realm.Realm; -import org.apache.shiro.subject.Subject; + import org.apache.zeppelin.annotation.ZeppelinApi; -import org.apache.zeppelin.conf.ZeppelinConfiguration; -import org.apache.zeppelin.notebook.Notebook; import org.apache.zeppelin.notebook.NotebookAuthorization; import org.apache.zeppelin.realm.jwt.JWTAuthenticationToken; import org.apache.zeppelin.realm.jwt.KnoxJwtRealm; import org.apache.zeppelin.server.JsonResponse; import org.apache.zeppelin.ticket.TicketContainer; import org.apache.zeppelin.utils.SecurityUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -/** Created for org.apache.zeppelin.rest.message. */ +/** + * Created for org.apache.zeppelin.rest.message. + */ @Path("/login") @Produces("application/json") public class LoginRestApi { @@ -150,36 +155,38 @@ public class LoginRestApi { data.put("ticket", ticket); response = new JsonResponse(Response.Status.OK, "", data); - // if no exception, that's it, we're done! + //if no exception, that's it, we're done! - // set roles for user in NotebookAuthorization module + //set roles for user in NotebookAuthorization module NotebookAuthorization.getInstance().setRoles(principal, roles); } catch (UnknownAccountException uae) { - // username wasn't in the system, show them an error message? + //username wasn't in the system, show them an error message? LOG.error("Exception in login: ", uae); } catch (IncorrectCredentialsException ice) { - // password didn't match, try again? + //password didn't match, try again? LOG.error("Exception in login: ", ice); } catch (LockedAccountException lae) { - // account for that username is locked - can't login. Show them a message? + //account for that username is locked - can't login. Show them a message? LOG.error("Exception in login: ", lae); } catch (AuthenticationException ae) { - // unexpected condition - error? + //unexpected condition - error? LOG.error("Exception in login: ", ae); } return response; } /** - * Post Login Returns userName & password for anonymous access, username is always anonymous. + * Post Login + * Returns userName & password + * for anonymous access, username is always anonymous. * After getting this ticket, access through websockets become safe * * @return 200 response */ @POST @ZeppelinApi - public Response postLogin( - @FormParam("userName") String userName, @FormParam("password") String password) { + public Response postLogin(@FormParam("userName") String userName, + @FormParam("password") String password) { JsonResponse response = null; // ticket set to anonymous for anonymous user. Simplify testing. Subject currentUser = org.apache.shiro.SecurityUtils.getSubject(); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookRepoRestApi.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookRepoRestApi.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookRepoRestApi.java index bbf3692..2615c2f 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookRepoRestApi.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookRepoRestApi.java @@ -19,31 +19,38 @@ package org.apache.zeppelin.rest; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Sets; import com.google.gson.JsonSyntaxException; + +import javax.inject.Inject; +import org.apache.commons.lang.StringUtils; +import org.apache.zeppelin.service.ServiceContext; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.IOException; import java.util.Collections; import java.util.List; import java.util.Set; -import javax.inject.Inject; + import javax.ws.rs.GET; import javax.ws.rs.PUT; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.Response; import javax.ws.rs.core.Response.Status; -import org.apache.commons.lang.StringUtils; + import org.apache.zeppelin.annotation.ZeppelinApi; import org.apache.zeppelin.notebook.repo.NotebookRepoSync; import org.apache.zeppelin.notebook.repo.NotebookRepoWithSettings; import org.apache.zeppelin.rest.message.NotebookRepoSettingsRequest; import org.apache.zeppelin.server.JsonResponse; -import org.apache.zeppelin.service.ServiceContext; import org.apache.zeppelin.socket.NotebookServer; import org.apache.zeppelin.user.AuthenticationInfo; import org.apache.zeppelin.utils.SecurityUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -/** NoteRepo rest API endpoint. */ +/** + * NoteRepo rest API endpoint. + * + */ @Path("/notebook-repositories") @Produces("application/json") public class NotebookRepoRestApi { @@ -58,7 +65,9 @@ public class NotebookRepoRestApi { this.notebookWsServer = notebookWsServer; } - /** List all notebook repository. */ + /** + * List all notebook repository. + */ @GET @ZeppelinApi public Response listRepoSettings() { @@ -68,11 +77,13 @@ public class NotebookRepoRestApi { return new JsonResponse<>(Status.OK, "", settings).build(); } - /** Reload notebook repository. */ + /** + * Reload notebook repository. + */ @GET @Path("reload") @ZeppelinApi - public Response refreshRepo() { + public Response refreshRepo(){ AuthenticationInfo subject = new AuthenticationInfo(SecurityUtils.getPrincipal()); LOG.info("Reloading notebook repository for user {}", subject.getUser()); try { @@ -109,16 +120,14 @@ public class NotebookRepoRestApi { newSettings = NotebookRepoSettingsRequest.fromJson(payload); } catch (JsonSyntaxException e) { LOG.error("Cannot update notebook repo settings", e); - return new JsonResponse<>( - Status.NOT_ACCEPTABLE, "", ImmutableMap.of("error", "Invalid payload structure")) - .build(); + return new JsonResponse<>(Status.NOT_ACCEPTABLE, "", + ImmutableMap.of("error", "Invalid payload structure")).build(); } if (NotebookRepoSettingsRequest.isEmpty(newSettings)) { LOG.error("Invalid property"); - return new JsonResponse<>( - Status.NOT_ACCEPTABLE, "", ImmutableMap.of("error", "Invalid payload")) - .build(); + return new JsonResponse<>(Status.NOT_ACCEPTABLE, "", + ImmutableMap.of("error", "Invalid payload")).build(); } LOG.info("User {} is going to change repo setting", subject.getUser()); NotebookRepoWithSettings updatedSettings = http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookResponse.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookResponse.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookResponse.java index 37f1a3f..16b6692 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookResponse.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookResponse.java @@ -19,7 +19,9 @@ package org.apache.zeppelin.rest; import javax.xml.bind.annotation.XmlRootElement; -/** Response wrapper. */ +/** + * Response wrapper. + */ @XmlRootElement public class NotebookResponse { private String msg; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookRestApi.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookRestApi.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookRestApi.java index 59c13fb..8411263 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookRestApi.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/NotebookRestApi.java @@ -20,24 +20,7 @@ package org.apache.zeppelin.rest; import com.google.common.collect.Sets; import com.google.common.reflect.TypeToken; import com.google.gson.Gson; -import java.io.IOException; -import java.util.HashMap; -import java.util.HashSet; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; -import java.util.Set; import javax.inject.Inject; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; import org.apache.commons.lang3.StringUtils; import org.apache.zeppelin.annotation.ZeppelinApi; import org.apache.zeppelin.conf.ZeppelinConfiguration; @@ -68,7 +51,27 @@ import org.quartz.CronExpression; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -/** Rest api endpoint for the notebook. */ +import javax.ws.rs.DELETE; +import javax.ws.rs.GET; +import javax.ws.rs.POST; +import javax.ws.rs.PUT; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; +import javax.ws.rs.Produces; +import javax.ws.rs.QueryParam; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import java.io.IOException; +import java.util.HashMap; +import java.util.HashSet; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + * Rest api endpoint for the notebook. + */ @Path("/notebook") @Produces("application/json") public class NotebookRestApi extends AbstractRestApi { @@ -94,14 +97,16 @@ public class NotebookRestApi extends AbstractRestApi { this.zConf = notebook.getConf(); } - /** Get note authorization information. */ + /** + * Get note authorization information. + */ @GET @Path("{noteId}/permissions") @ZeppelinApi public Response getNotePermissions(@PathParam("noteId") String noteId) throws IOException { checkIfUserIsAnon(getBlockNotAuthenticatedUserErrorMsg()); - checkIfUserCanRead( - noteId, "Insufficient privileges you cannot get the list of permissions for this note"); + checkIfUserCanRead(noteId, + "Insufficient privileges you cannot get the list of permissions for this note"); HashMap<String, Set<String>> permissionsMap = new HashMap<>(); permissionsMap.put("owners", notebookAuthorization.getOwners(noteId)); permissionsMap.put("readers", notebookAuthorization.getReaders(noteId)); @@ -111,16 +116,11 @@ public class NotebookRestApi extends AbstractRestApi { } private String ownerPermissionError(Set<String> current, Set<String> allowed) { - LOG.info( - "Cannot change permissions. Connection owners {}. Allowed owners {}", - current.toString(), - allowed.toString()); - return "Insufficient privileges to change permissions.\n\n" - + "Allowed owners: " - + allowed.toString() - + "\n\n" - + "User belongs to: " - + current.toString(); + LOG.info("Cannot change permissions. Connection owners {}. Allowed owners {}", + current.toString(), allowed.toString()); + return "Insufficient privileges to change permissions.\n\n" + + "Allowed owners: " + allowed.toString() + "\n\n" + + "User belongs to: " + current.toString(); } private String getBlockNotAuthenticatedUserErrorMsg() { @@ -133,7 +133,9 @@ public class NotebookRestApi extends AbstractRestApi { * In the future we might want to generalize this for the rest of the api enmdpoints. */ - /** Check if the current user is not authenticated(anonymous user) or not. */ + /** + * Check if the current user is not authenticated(anonymous user) or not. + */ private void checkIfUserIsAnon(String errorMsg) { boolean isAuthenticated = SecurityUtils.isAuthenticated(); if (isAuthenticated && SecurityUtils.getPrincipal().equals("anonymous")) { @@ -142,7 +144,9 @@ public class NotebookRestApi extends AbstractRestApi { } } - /** Check if the current user own the given note. */ + /** + * Check if the current user own the given note. + */ private void checkIfUserIsOwner(String noteId, String errorMsg) { Set<String> userAndRoles = Sets.newHashSet(); userAndRoles.add(SecurityUtils.getPrincipal()); @@ -152,7 +156,9 @@ public class NotebookRestApi extends AbstractRestApi { } } - /** Check if the current user is either Owner or Writer for the given note. */ + /** + * Check if the current user is either Owner or Writer for the given note. + */ private void checkIfUserCanWrite(String noteId, String errorMsg) { Set<String> userAndRoles = Sets.newHashSet(); userAndRoles.add(SecurityUtils.getPrincipal()); @@ -162,7 +168,9 @@ public class NotebookRestApi extends AbstractRestApi { } } - /** Check if the current user can access (at least he have to be reader) the given note. */ + /** + * Check if the current user can access (at least he have to be reader) the given note. + */ private void checkIfUserCanRead(String noteId, String errorMsg) { Set<String> userAndRoles = Sets.newHashSet(); userAndRoles.add(SecurityUtils.getPrincipal()); @@ -172,7 +180,9 @@ public class NotebookRestApi extends AbstractRestApi { } } - /** Check if the current user can run the given note. */ + /** + * Check if the current user can run the given note. + */ private void checkIfUserCanRun(String noteId, String errorMsg) { Set<String> userAndRoles = Sets.newHashSet(); userAndRoles.add(SecurityUtils.getPrincipal()); @@ -201,7 +211,9 @@ public class NotebookRestApi extends AbstractRestApi { } } - /** Set note authorization information. */ + /** + * Set note authorization information. + */ @PUT @Path("{noteId}/permissions") @ZeppelinApi @@ -214,21 +226,16 @@ public class NotebookRestApi extends AbstractRestApi { userAndRoles.addAll(roles); checkIfUserIsAnon(getBlockNotAuthenticatedUserErrorMsg()); - checkIfUserIsOwner( - noteId, ownerPermissionError(userAndRoles, notebookAuthorization.getOwners(noteId))); + checkIfUserIsOwner(noteId, + ownerPermissionError(userAndRoles, notebookAuthorization.getOwners(noteId))); HashMap<String, HashSet<String>> permMap = - gson.fromJson(req, new TypeToken<HashMap<String, HashSet<String>>>() {}.getType()); + gson.fromJson(req, new TypeToken<HashMap<String, HashSet<String>>>() { + }.getType()); Note note = notebook.getNote(noteId); - LOG.info( - "Set permissions {} {} {} {} {} {}", - noteId, - principal, - permMap.get("owners"), - permMap.get("readers"), - permMap.get("runners"), - permMap.get("writers")); + LOG.info("Set permissions {} {} {} {} {} {}", noteId, principal, permMap.get("owners"), + permMap.get("readers"), permMap.get("runners"), permMap.get("writers")); HashSet<String> readers = permMap.get("readers"); HashSet<String> runners = permMap.get("runners"); @@ -266,11 +273,8 @@ public class NotebookRestApi extends AbstractRestApi { notebookAuthorization.setRunners(noteId, runners); notebookAuthorization.setWriters(noteId, writers); notebookAuthorization.setOwners(noteId, owners); - LOG.debug( - "After set permissions {} {} {} {}", - notebookAuthorization.getOwners(noteId), - notebookAuthorization.getReaders(noteId), - notebookAuthorization.getRunners(noteId), + LOG.debug("After set permissions {} {} {} {}", notebookAuthorization.getOwners(noteId), + notebookAuthorization.getReaders(noteId), notebookAuthorization.getRunners(noteId), notebookAuthorization.getWriters(noteId)); AuthenticationInfo subject = new AuthenticationInfo(SecurityUtils.getPrincipal()); note.persist(subject); @@ -282,8 +286,8 @@ public class NotebookRestApi extends AbstractRestApi { @GET @ZeppelinApi public Response getNoteList() throws IOException { - List<Map<String, String>> notesInfo = - notebookService.listNotes(false, getServiceContext(), new RestServiceCallback()); + List<Map<String, String>> notesInfo = notebookService.listNotes(false, getServiceContext(), + new RestServiceCallback()); return new JsonResponse<>(Status.OK, "", notesInfo).build(); } @@ -291,7 +295,8 @@ public class NotebookRestApi extends AbstractRestApi { @Path("{noteId}") @ZeppelinApi public Response getNote(@PathParam("noteId") String noteId) throws IOException { - Note note = notebookService.getNote(noteId, getServiceContext(), new RestServiceCallback()); + Note note = + notebookService.getNote(noteId, getServiceContext(), new RestServiceCallback()); return new JsonResponse<>(Status.OK, "", note).build(); } @@ -322,8 +327,8 @@ public class NotebookRestApi extends AbstractRestApi { @Path("import") @ZeppelinApi public Response importNote(String noteJson) throws IOException { - Note note = - notebookService.importNote(null, noteJson, getServiceContext(), new RestServiceCallback()); + Note note = notebookService.importNote(null, noteJson, getServiceContext(), + new RestServiceCallback()); return new JsonResponse<>(Status.OK, "", note.getId()).build(); } @@ -340,12 +345,11 @@ public class NotebookRestApi extends AbstractRestApi { String user = SecurityUtils.getPrincipal(); LOG.info("Create new note by JSON {}", message); NewNoteRequest request = NewNoteRequest.fromJson(message); - Note note = - notebookService.createNote( - request.getName(), - zConf.getString(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_GROUP_DEFAULT), - getServiceContext(), - new RestServiceCallback<>()); + Note note = notebookService.createNote( + request.getName(), + zConf.getString(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_GROUP_DEFAULT), + getServiceContext(), + new RestServiceCallback<>()); AuthenticationInfo subject = new AuthenticationInfo(SecurityUtils.getPrincipal()); if (request.getParagraphs() != null) { for (NewParagraphRequest paragraphRequest : request.getParagraphs()) { @@ -368,8 +372,7 @@ public class NotebookRestApi extends AbstractRestApi { @ZeppelinApi public Response deleteNote(@PathParam("noteId") String noteId) throws IOException { LOG.info("Delete note {} ", noteId); - notebookService.removeNote( - noteId, + notebookService.removeNote(noteId, getServiceContext(), new RestServiceCallback<String>() { @Override @@ -403,18 +406,14 @@ public class NotebookRestApi extends AbstractRestApi { newNoteName = request.getName(); } AuthenticationInfo subject = new AuthenticationInfo(SecurityUtils.getPrincipal()); - Note newNote = - notebookService.cloneNote( - noteId, - newNoteName, - getServiceContext(), - new RestServiceCallback<Note>() { - @Override - public void onSuccess(Note newNote, ServiceContext context) throws IOException { - notebookServer.broadcastNote(newNote); - notebookServer.broadcastNoteList(subject, context.getUserAndRoles()); - } - }); + Note newNote = notebookService.cloneNote(noteId, newNoteName, getServiceContext(), + new RestServiceCallback<Note>(){ + @Override + public void onSuccess(Note newNote, ServiceContext context) throws IOException { + notebookServer.broadcastNote(newNote); + notebookServer.broadcastNoteList(subject, context.getUserAndRoles()); + } + }); return new JsonResponse<>(Status.OK, "", newNote.getId()).build(); } @@ -428,8 +427,8 @@ public class NotebookRestApi extends AbstractRestApi { @PUT @Path("{noteId}/rename") @ZeppelinApi - public Response renameNote(@PathParam("noteId") String noteId, String message) - throws IOException { + public Response renameNote(@PathParam("noteId") String noteId, + String message) throws IOException { LOG.info("rename note by JSON {}", message); RenameNoteRequest request = gson.fromJson(message, RenameNoteRequest.class); String newName = request.getName(); @@ -437,11 +436,8 @@ public class NotebookRestApi extends AbstractRestApi { LOG.warn("Trying to rename notebook {} with empty name parameter", noteId); throw new BadRequestException("name can not be empty"); } - notebookService.renameNote( - noteId, - request.getName(), - getServiceContext(), - new RestServiceCallback<Note>() { + notebookService.renameNote(noteId, request.getName(), getServiceContext(), + new RestServiceCallback<Note>(){ @Override public void onSuccess(Note note, ServiceContext context) throws IOException { notebookServer.broadcastNote(note); @@ -495,9 +491,8 @@ public class NotebookRestApi extends AbstractRestApi { @GET @Path("{noteId}/paragraph/{paragraphId}") @ZeppelinApi - public Response getParagraph( - @PathParam("noteId") String noteId, @PathParam("paragraphId") String paragraphId) - throws IOException { + public Response getParagraph(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId) throws IOException { LOG.info("get paragraph {} {}", noteId, paragraphId); Note note = notebook.getNote(noteId); @@ -513,16 +508,14 @@ public class NotebookRestApi extends AbstractRestApi { * Update paragraph. * * @param message json containing the "text" and optionally the "title" of the paragraph, e.g. - * {"text" : "updated text", "title" : "Updated title" } + * {"text" : "updated text", "title" : "Updated title" } */ @PUT @Path("{noteId}/paragraph/{paragraphId}") @ZeppelinApi - public Response updateParagraph( - @PathParam("noteId") String noteId, - @PathParam("paragraphId") String paragraphId, - String message) - throws IOException { + public Response updateParagraph(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId, + String message) throws IOException { String user = SecurityUtils.getPrincipal(); LOG.info("{} will update paragraph {} {}", user, noteId, paragraphId); @@ -548,11 +541,9 @@ public class NotebookRestApi extends AbstractRestApi { @PUT @Path("{noteId}/paragraph/{paragraphId}/config") @ZeppelinApi - public Response updateParagraphConfig( - @PathParam("noteId") String noteId, - @PathParam("paragraphId") String paragraphId, - String message) - throws IOException { + public Response updateParagraphConfig(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId, + String message) throws IOException { String user = SecurityUtils.getPrincipal(); LOG.info("{} will update paragraph config {} {}", user, noteId, paragraphId); @@ -579,16 +570,12 @@ public class NotebookRestApi extends AbstractRestApi { @POST @Path("{noteId}/paragraph/{paragraphId}/move/{newIndex}") @ZeppelinApi - public Response moveParagraph( - @PathParam("noteId") String noteId, - @PathParam("paragraphId") String paragraphId, - @PathParam("newIndex") String newIndex) + public Response moveParagraph(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId, + @PathParam("newIndex") String newIndex) throws IOException { LOG.info("move paragraph {} {} {}", noteId, paragraphId, newIndex); - notebookService.moveParagraph( - noteId, - paragraphId, - Integer.parseInt(newIndex), + notebookService.moveParagraph(noteId, paragraphId, Integer.parseInt(newIndex), getServiceContext(), new RestServiceCallback<Paragraph>() { @Override @@ -597,6 +584,7 @@ public class NotebookRestApi extends AbstractRestApi { } }); return new JsonResponse(Status.OK, "").build(); + } /** @@ -609,14 +597,10 @@ public class NotebookRestApi extends AbstractRestApi { @DELETE @Path("{noteId}/paragraph/{paragraphId}") @ZeppelinApi - public Response deleteParagraph( - @PathParam("noteId") String noteId, @PathParam("paragraphId") String paragraphId) - throws IOException { + public Response deleteParagraph(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId) throws IOException { LOG.info("delete paragraph {} {}", noteId, paragraphId); - notebookService.removeParagraph( - noteId, - paragraphId, - getServiceContext(), + notebookService.removeParagraph(noteId, paragraphId, getServiceContext(), new RestServiceCallback<Paragraph>() { @Override public void onSuccess(Paragraph p, ServiceContext context) throws IOException { @@ -636,10 +620,11 @@ public class NotebookRestApi extends AbstractRestApi { @PUT @Path("{noteId}/clear") @ZeppelinApi - public Response clearAllParagraphOutput(@PathParam("noteId") String noteId) throws IOException { + public Response clearAllParagraphOutput(@PathParam("noteId") String noteId) + throws IOException { LOG.info("clear all paragraph output of note {}", noteId); - notebookService.clearAllParagraphOutput( - noteId, getServiceContext(), new RestServiceCallback<>()); + notebookService.clearAllParagraphOutput(noteId, getServiceContext(), + new RestServiceCallback<>()); return new JsonResponse(Status.OK, "").build(); } @@ -654,8 +639,8 @@ public class NotebookRestApi extends AbstractRestApi { @POST @Path("job/{noteId}") @ZeppelinApi - public Response runNoteJobs( - @PathParam("noteId") String noteId, @QueryParam("waitToFinish") Boolean waitToFinish) + public Response runNoteJobs(@PathParam("noteId") String noteId, + @QueryParam("waitToFinish") Boolean waitToFinish) throws IOException, IllegalArgumentException { boolean blocking = waitToFinish == null || waitToFinish; LOG.info("run note jobs {} waitToFinish: {}", noteId, blocking); @@ -669,10 +654,8 @@ public class NotebookRestApi extends AbstractRestApi { note.runAll(subject, blocking); } catch (Exception ex) { LOG.error("Exception from run", ex); - return new JsonResponse<>( - Status.PRECONDITION_FAILED, - ex.getMessage() + "- Not selected or Invalid Interpreter bind") - .build(); + return new JsonResponse<>(Status.PRECONDITION_FAILED, + ex.getMessage() + "- Not selected or Invalid Interpreter bind").build(); } return new JsonResponse<>(Status.OK).build(); } @@ -727,7 +710,7 @@ public class NotebookRestApi extends AbstractRestApi { /** * Get note paragraph job status REST API. * - * @param noteId ID of Note + * @param noteId ID of Note * @param paragraphId ID of Paragraph * @return JSON with status.OK * @throws IOException @@ -736,8 +719,8 @@ public class NotebookRestApi extends AbstractRestApi { @GET @Path("job/{noteId}/{paragraphId}") @ZeppelinApi - public Response getNoteParagraphJobStatus( - @PathParam("noteId") String noteId, @PathParam("paragraphId") String paragraphId) + public Response getNoteParagraphJobStatus(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId) throws IOException, IllegalArgumentException { LOG.info("get note paragraph job status."); Note note = notebook.getNote(noteId); @@ -747,15 +730,15 @@ public class NotebookRestApi extends AbstractRestApi { Paragraph paragraph = note.getParagraph(paragraphId); checkIfParagraphIsNotNull(paragraph); - return new JsonResponse<>(Status.OK, null, note.generateSingleParagraphInfo(paragraphId)) - .build(); + return new JsonResponse<>(Status.OK, null, note.generateSingleParagraphInfo(paragraphId)). + build(); } /** * Run asynchronously paragraph job REST API. * - * @param message - JSON with params if user wants to update dynamic form's value null, empty - * string, empty json if user doesn't want to update + * @param message - JSON with params if user wants to update dynamic form's value + * null, empty string, empty json if user doesn't want to update * @return JSON with status.OK * @throws IOException * @throws IllegalArgumentException @@ -763,10 +746,8 @@ public class NotebookRestApi extends AbstractRestApi { @POST @Path("job/{noteId}/{paragraphId}") @ZeppelinApi - public Response runParagraph( - @PathParam("noteId") String noteId, - @PathParam("paragraphId") String paragraphId, - String message) + public Response runParagraph(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId, String message) throws IOException, IllegalArgumentException { LOG.info("run paragraph job asynchronously {} {} {}", noteId, paragraphId, message); @@ -776,27 +757,18 @@ public class NotebookRestApi extends AbstractRestApi { RunParagraphWithParametersRequest.fromJson(message); params = request.getParams(); } - notebookService.runParagraph( - noteId, - paragraphId, - "", - "", - params, - new HashMap<>(), - false, - false, - getServiceContext(), - new RestServiceCallback<>()); + notebookService.runParagraph(noteId, paragraphId, "", "", params, + new HashMap<>(), false, false, getServiceContext(), new RestServiceCallback<>()); return new JsonResponse<>(Status.OK).build(); } /** * Run synchronously a paragraph REST API. * - * @param noteId - noteId + * @param noteId - noteId * @param paragraphId - paragraphId - * @param message - JSON with params if user wants to update dynamic form's value null, empty - * string, empty json if user doesn't want to update + * @param message - JSON with params if user wants to update dynamic form's value + * null, empty string, empty json if user doesn't want to update * @return JSON with status.OK * @throws IOException * @throws IllegalArgumentException @@ -804,10 +776,9 @@ public class NotebookRestApi extends AbstractRestApi { @POST @Path("run/{noteId}/{paragraphId}") @ZeppelinApi - public Response runParagraphSynchronously( - @PathParam("noteId") String noteId, - @PathParam("paragraphId") String paragraphId, - String message) + public Response runParagraphSynchronously(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId, + String message) throws IOException, IllegalArgumentException { LOG.info("run paragraph synchronously {} {} {}", noteId, paragraphId, message); @@ -817,17 +788,8 @@ public class NotebookRestApi extends AbstractRestApi { RunParagraphWithParametersRequest.fromJson(message); params = request.getParams(); } - if (notebookService.runParagraph( - noteId, - paragraphId, - "", - "", - params, - new HashMap<>(), - false, - true, - getServiceContext(), - new RestServiceCallback<>())) { + if (notebookService.runParagraph(noteId, paragraphId, "", "", params, + new HashMap<>(), false, true, getServiceContext(), new RestServiceCallback<>())) { Note note = notebookService.getNote(noteId, getServiceContext(), new RestServiceCallback<>()); Paragraph p = note.getParagraph(paragraphId); InterpreterResult result = p.getReturn(); @@ -844,7 +806,7 @@ public class NotebookRestApi extends AbstractRestApi { /** * Stop(delete) paragraph job REST API. * - * @param noteId ID of Note + * @param noteId ID of Note * @param paragraphId ID of Paragraph * @return JSON with status.OK * @throws IOException @@ -853,12 +815,12 @@ public class NotebookRestApi extends AbstractRestApi { @DELETE @Path("job/{noteId}/{paragraphId}") @ZeppelinApi - public Response cancelParagraph( - @PathParam("noteId") String noteId, @PathParam("paragraphId") String paragraphId) + public Response cancelParagraph(@PathParam("noteId") String noteId, + @PathParam("paragraphId") String paragraphId) throws IOException, IllegalArgumentException { LOG.info("stop paragraph job {} ", noteId); - notebookService.cancelParagraph( - noteId, paragraphId, getServiceContext(), new RestServiceCallback<Paragraph>()); + notebookService.cancelParagraph(noteId, paragraphId, getServiceContext(), + new RestServiceCallback<Paragraph>()); return new JsonResponse<>(Status.OK).build(); } @@ -913,8 +875,8 @@ public class NotebookRestApi extends AbstractRestApi { Note note = notebook.getNote(noteId); checkIfNoteIsNotNull(note); - checkIfUserIsOwner( - noteId, "Insufficient privileges you cannot remove this cron job from this note"); + checkIfUserIsOwner(noteId, + "Insufficient privileges you cannot remove this cron job from this note"); checkIfNoteSupportsCron(note); Map<String, Object> config = note.getConfig(); @@ -960,9 +922,8 @@ public class NotebookRestApi extends AbstractRestApi { @ZeppelinApi public Response getJobListforNote() throws IOException, IllegalArgumentException { LOG.info("Get note jobs for job manager"); - List<JobManagerService.NoteJobInfo> noteJobs = - jobManagerService.getNoteJobInfoByUnixTime( - 0, getServiceContext(), new RestServiceCallback<>()); + List<JobManagerService.NoteJobInfo> noteJobs = jobManagerService + .getNoteJobInfoByUnixTime(0, getServiceContext(), new RestServiceCallback<>()); Map<String, Object> response = new HashMap<>(); response.put("lastResponseUnixTime", System.currentTimeMillis()); response.put("jobs", noteJobs); @@ -971,8 +932,8 @@ public class NotebookRestApi extends AbstractRestApi { /** * Get updated note jobs for job manager - * - * <p>Return the `Note` change information within the post unix timestamp. + * <p> + * Return the `Note` change information within the post unix timestamp. * * @return JSON with status.OK * @throws IOException @@ -985,15 +946,17 @@ public class NotebookRestApi extends AbstractRestApi { throws IOException, IllegalArgumentException { LOG.info("Get updated note jobs lastUpdateTime {}", lastUpdateUnixTime); List<JobManagerService.NoteJobInfo> noteJobs = - jobManagerService.getNoteJobInfoByUnixTime( - lastUpdateUnixTime, getServiceContext(), new RestServiceCallback<>()); + jobManagerService.getNoteJobInfoByUnixTime(lastUpdateUnixTime, getServiceContext(), + new RestServiceCallback<>()); Map<String, Object> response = new HashMap<>(); response.put("lastResponseUnixTime", System.currentTimeMillis()); response.put("jobs", noteJobs); return new JsonResponse<>(Status.OK, response).build(); } - /** Search for a Notes with permissions. */ + /** + * Search for a Notes with permissions. + */ @GET @Path("search") @ZeppelinApi @@ -1008,10 +971,10 @@ public class NotebookRestApi extends AbstractRestApi { for (int i = 0; i < notesFound.size(); i++) { String[] ids = notesFound.get(i).get("id").split("/", 2); String noteId = ids[0]; - if (!notebookAuthorization.isOwner(noteId, userAndRoles) - && !notebookAuthorization.isReader(noteId, userAndRoles) - && !notebookAuthorization.isWriter(noteId, userAndRoles) - && !notebookAuthorization.isRunner(noteId, userAndRoles)) { + if (!notebookAuthorization.isOwner(noteId, userAndRoles) && + !notebookAuthorization.isReader(noteId, userAndRoles) && + !notebookAuthorization.isWriter(noteId, userAndRoles) && + !notebookAuthorization.isRunner(noteId, userAndRoles)) { notesFound.remove(i); i--; } @@ -1020,6 +983,7 @@ public class NotebookRestApi extends AbstractRestApi { return new JsonResponse<>(Status.OK, notesFound).build(); } + private void handleParagraphParams(String message, Note note, Paragraph paragraph) throws IOException { // handle params if presented @@ -1049,11 +1013,8 @@ public class NotebookRestApi extends AbstractRestApi { private void configureParagraph(Paragraph p, Map<String, Object> newConfig, String user) { LOG.info("Configure Paragraph for user {}", user); if (newConfig == null || newConfig.isEmpty()) { - LOG.warn( - "{} is trying to update paragraph {} of note {} with empty config", - user, - p.getId(), - p.getNote().getId()); + LOG.warn("{} is trying to update paragraph {} of note {} with empty config", + user, p.getId(), p.getNote().getId()); throw new BadRequestException("paragraph config cannot be empty"); } Map<String, Object> origConfig = p.getConfig(); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/SecurityRestApi.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/SecurityRestApi.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/SecurityRestApi.java index b4d71d9..45b76fa 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/SecurityRestApi.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/SecurityRestApi.java @@ -17,18 +17,6 @@ package org.apache.zeppelin.rest; import com.google.gson.Gson; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.core.Response; import org.apache.commons.lang3.StringUtils; import org.apache.zeppelin.annotation.ZeppelinApi; import org.apache.zeppelin.conf.ZeppelinConfiguration; @@ -38,7 +26,22 @@ import org.apache.zeppelin.utils.SecurityUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -/** Zeppelin security rest api endpoint. */ +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; +import javax.ws.rs.Produces; +import javax.ws.rs.core.Response; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; + +/** + * Zeppelin security rest api endpoint. + */ @Path("/security") @Produces("application/json") public class SecurityRestApi { @@ -46,8 +49,10 @@ public class SecurityRestApi { private static final Gson gson = new Gson(); /** - * Get ticket Returns username & ticket for anonymous access, username is always anonymous. After - * getting this ticket, access through websockets become safe + * Get ticket + * Returns username & ticket + * for anonymous access, username is always anonymous. + * After getting this ticket, access through websockets become safe * * @return 200 response */ @@ -80,7 +85,7 @@ public class SecurityRestApi { /** * Get userlist. * - * <p>Returns list of all user from available realms + * Returns list of all user from available realms * * @return 200 response */ @@ -96,19 +101,17 @@ public class SecurityRestApi { List<String> autoSuggestRoleList = new ArrayList<>(); Collections.sort(usersList); Collections.sort(rolesList); - Collections.sort( - usersList, - new Comparator<String>() { - @Override - public int compare(String o1, String o2) { - if (o1.matches(searchText + "(.*)") && o2.matches(searchText + "(.*)")) { - return 0; - } else if (o1.matches(searchText + "(.*)")) { - return -1; - } - return 0; - } - }); + Collections.sort(usersList, new Comparator<String>() { + @Override + public int compare(String o1, String o2) { + if (o1.matches(searchText + "(.*)") && o2.matches(searchText + "(.*)")) { + return 0; + } else if (o1.matches(searchText + "(.*)")) { + return -1; + } + return 0; + } + }); int maxLength = 0; for (String user : usersList) { if (StringUtils.containsIgnoreCase(user, searchText)) { http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/ZeppelinRestApi.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/ZeppelinRestApi.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/ZeppelinRestApi.java index 75e92e5..20d6973 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/ZeppelinRestApi.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/ZeppelinRestApi.java @@ -16,8 +16,12 @@ */ package org.apache.zeppelin.rest; +import org.apache.log4j.Level; +import org.apache.log4j.Logger; + import java.util.HashMap; import java.util.Map; + import javax.servlet.http.HttpServletRequest; import javax.ws.rs.GET; import javax.ws.rs.PUT; @@ -25,8 +29,7 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.Context; import javax.ws.rs.core.Response; -import org.apache.log4j.Level; -import org.apache.log4j.Logger; + import org.apache.zeppelin.annotation.ZeppelinApi; import org.apache.zeppelin.server.JsonResponse; import org.apache.zeppelin.util.Util; @@ -70,18 +73,16 @@ public class ZeppelinRestApi { */ @PUT @Path("log/level/{logLevel}") - public Response changeRootLogLevel( - @Context HttpServletRequest request, @PathParam("logLevel") String logLevel) { + public Response changeRootLogLevel(@Context HttpServletRequest request, + @PathParam("logLevel") String logLevel) { Level level = Level.toLevel(logLevel); if (logLevel.toLowerCase().equalsIgnoreCase(level.toString().toLowerCase())) { Logger.getRootLogger().setLevel(level); return new JsonResponse<>(Response.Status.OK).build(); } else { - return new JsonResponse<>( - Response.Status.NOT_ACCEPTABLE, - "Please check LOG level specified. Valid values: DEBUG, ERROR, FATAL, " - + "INFO, TRACE, WARN") - .build(); + return new JsonResponse<>(Response.Status.NOT_ACCEPTABLE, + "Please check LOG level specified. Valid values: DEBUG, ERROR, FATAL, " + + "INFO, TRACE, WARN").build(); } } } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/BadRequestException.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/BadRequestException.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/BadRequestException.java index 15a7d4d..9af2fdd 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/BadRequestException.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/BadRequestException.java @@ -20,9 +20,12 @@ import static javax.ws.rs.core.Response.Status.BAD_REQUEST; import javax.ws.rs.WebApplicationException; import javax.ws.rs.core.Response; + import org.apache.zeppelin.utils.ExceptionUtils; -/** BadRequestException handler for WebApplicationException. */ +/** + * BadRequestException handler for WebApplicationException. + */ public class BadRequestException extends WebApplicationException { public BadRequestException() { super(ExceptionUtils.jsonResponse(BAD_REQUEST)); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/ForbiddenException.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/ForbiddenException.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/ForbiddenException.java index 17e0a13..abe08eb 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/ForbiddenException.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/ForbiddenException.java @@ -20,9 +20,12 @@ import static javax.ws.rs.core.Response.Status.FORBIDDEN; import javax.ws.rs.WebApplicationException; import javax.ws.rs.core.Response; + import org.apache.zeppelin.utils.ExceptionUtils; -/** UnauthorizedException handler for WebApplicationException. */ +/** + * UnauthorizedException handler for WebApplicationException. + */ public class ForbiddenException extends WebApplicationException { private static Response forbiddenJson(String message) { return ExceptionUtils.jsonResponseContent(FORBIDDEN, message); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/NoteNotFoundException.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/NoteNotFoundException.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/NoteNotFoundException.java index a406089..773d749 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/NoteNotFoundException.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/NoteNotFoundException.java @@ -17,14 +17,16 @@ package org.apache.zeppelin.rest.exception; -import static javax.ws.rs.core.Response.Status.NOT_FOUND; +import org.apache.zeppelin.utils.ExceptionUtils; import javax.ws.rs.WebApplicationException; -import org.apache.zeppelin.utils.ExceptionUtils; + +import static javax.ws.rs.core.Response.Status.NOT_FOUND; public class NoteNotFoundException extends WebApplicationException { public NoteNotFoundException(String noteId) { super(ExceptionUtils.jsonResponseContent(NOT_FOUND, "No such note: " + noteId)); } + } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/ParagraphNotFoundException.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/ParagraphNotFoundException.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/ParagraphNotFoundException.java index 4213cc7..4ec5ee1 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/ParagraphNotFoundException.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/ParagraphNotFoundException.java @@ -17,10 +17,11 @@ package org.apache.zeppelin.rest.exception; -import static javax.ws.rs.core.Response.Status.NOT_FOUND; +import org.apache.zeppelin.utils.ExceptionUtils; import javax.ws.rs.WebApplicationException; -import org.apache.zeppelin.utils.ExceptionUtils; + +import static javax.ws.rs.core.Response.Status.NOT_FOUND; public class ParagraphNotFoundException extends WebApplicationException { http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/WebApplicationExceptionMapper.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/WebApplicationExceptionMapper.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/WebApplicationExceptionMapper.java index 5c83828..79e3fe0 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/WebApplicationExceptionMapper.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/exception/WebApplicationExceptionMapper.java @@ -31,14 +31,14 @@ public class WebApplicationExceptionMapper implements ExceptionMapper<WebApplica public WebApplicationExceptionMapper() { GsonBuilder gsonBuilder = new GsonBuilder().enableComplexMapKeySerialization(); - gsonBuilder.registerTypeHierarchyAdapter(Exception.class, new ExceptionSerializer()); + gsonBuilder.registerTypeHierarchyAdapter( + Exception.class, new ExceptionSerializer()); this.gson = gsonBuilder.create(); } @Override public Response toResponse(WebApplicationException exception) { return Response.status(exception.getResponse().getStatus()) - .entity(gson.toJson(exception)) - .build(); + .entity(gson.toJson(exception)).build(); } } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/CronRequest.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/CronRequest.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/CronRequest.java index fb1408c..404a3c3 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/CronRequest.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/CronRequest.java @@ -17,15 +17,19 @@ package org.apache.zeppelin.rest.message; import com.google.gson.Gson; + import org.apache.zeppelin.common.JsonSerializable; -/** CronRequest rest api request message. */ +/** + * CronRequest rest api request message. + */ public class CronRequest implements JsonSerializable { private static final Gson gson = new Gson(); String cron; - public CronRequest() {} + public CronRequest (){ + } public String getCronString() { return cron; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewInterpreterSettingRequest.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewInterpreterSettingRequest.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewInterpreterSettingRequest.java index bf5cc5d..3d577ef 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewInterpreterSettingRequest.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewInterpreterSettingRequest.java @@ -17,14 +17,18 @@ package org.apache.zeppelin.rest.message; import com.google.gson.Gson; + import java.util.List; import java.util.Map; + import org.apache.zeppelin.common.JsonSerializable; import org.apache.zeppelin.dep.Dependency; import org.apache.zeppelin.interpreter.InterpreterOption; import org.apache.zeppelin.interpreter.InterpreterProperty; -/** NewInterpreterSetting REST API request message. */ +/** + * NewInterpreterSetting REST API request message. + */ public class NewInterpreterSettingRequest implements JsonSerializable { private static final Gson gson = new Gson(); private String name; @@ -34,7 +38,8 @@ public class NewInterpreterSettingRequest implements JsonSerializable { private List<Dependency> dependencies; private InterpreterOption option; - public NewInterpreterSettingRequest() {} + public NewInterpreterSettingRequest() { + } public String getName() { return name; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewNoteRequest.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewNoteRequest.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewNoteRequest.java index e1aa3c1..9cf1df1 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewNoteRequest.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewNoteRequest.java @@ -17,17 +17,22 @@ package org.apache.zeppelin.rest.message; import com.google.gson.Gson; + import java.util.List; + import org.apache.zeppelin.common.JsonSerializable; -/** NewNoteRequest rest api request message. */ +/** + * NewNoteRequest rest api request message. + */ public class NewNoteRequest implements JsonSerializable { private static final Gson gson = new Gson(); String name; List<NewParagraphRequest> paragraphs; - public NewNoteRequest() {} + public NewNoteRequest (){ + } public String getName() { return name; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewParagraphRequest.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewParagraphRequest.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewParagraphRequest.java index 506fc72..e0cb786 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewParagraphRequest.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NewParagraphRequest.java @@ -17,15 +17,18 @@ package org.apache.zeppelin.rest.message; import com.google.gson.Gson; + import java.util.HashMap; + import org.apache.zeppelin.common.JsonSerializable; /** * NewParagraphRequest rest api request message * - * <p>index field will be ignored when it's used to provide initial paragraphs visualization - * (optional) one of: table,pieChart,multibarChart,stackedAreaChart,lineChart,scatterChart colWidth - * (optional), e.g. 12.0 + * index field will be ignored when it's used to provide initial paragraphs + * visualization (optional) one of: + * table,pieChart,multibarChart,stackedAreaChart,lineChart,scatterChart + * colWidth (optional), e.g. 12.0 */ public class NewParagraphRequest implements JsonSerializable { private static final Gson gson = new Gson(); @@ -33,9 +36,10 @@ public class NewParagraphRequest implements JsonSerializable { String title; String text; Double index; - HashMap<String, Object> config; + HashMap< String, Object > config; - public NewParagraphRequest() {} + public NewParagraphRequest() { + } public String getTitle() { return title; @@ -49,7 +53,7 @@ public class NewParagraphRequest implements JsonSerializable { return index; } - public HashMap<String, Object> getConfig() { + public HashMap< String, Object > getConfig() { return config; } http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NotebookRepoSettingsRequest.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NotebookRepoSettingsRequest.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NotebookRepoSettingsRequest.java index ad6db52..31f3be8 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NotebookRepoSettingsRequest.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/NotebookRepoSettingsRequest.java @@ -17,12 +17,17 @@ package org.apache.zeppelin.rest.message; import com.google.gson.Gson; + +import org.apache.commons.lang.StringUtils; + import java.util.Collections; import java.util.Map; -import org.apache.commons.lang.StringUtils; + import org.apache.zeppelin.common.JsonSerializable; -/** Represent payload of a notebook repo settings. */ +/** + * Represent payload of a notebook repo settings. + */ public class NotebookRepoSettingsRequest implements JsonSerializable { private static final Gson gson = new Gson(); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RenameNoteRequest.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RenameNoteRequest.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RenameNoteRequest.java index ad0e5a3..72ee2a6 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RenameNoteRequest.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RenameNoteRequest.java @@ -17,11 +17,17 @@ package org.apache.zeppelin.rest.message; -/** RenameNoteRequest rest api request message */ +/** + * RenameNoteRequest rest api request message + * + */ + public class RenameNoteRequest { String name; - public RenameNoteRequest() {} + public RenameNoteRequest (){ + + } public String getName() { return name; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RestartInterpreterRequest.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RestartInterpreterRequest.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RestartInterpreterRequest.java index 479d2a9..8a6d0d0 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RestartInterpreterRequest.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RestartInterpreterRequest.java @@ -17,15 +17,19 @@ package org.apache.zeppelin.rest.message; import com.google.gson.Gson; + import org.apache.zeppelin.common.JsonSerializable; -/** RestartInterpreter rest api request message. */ +/** + * RestartInterpreter rest api request message. + */ public class RestartInterpreterRequest implements JsonSerializable { private static final Gson gson = new Gson(); String noteId; - public RestartInterpreterRequest() {} + public RestartInterpreterRequest() { + } public String getNoteId() { return noteId; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RunParagraphWithParametersRequest.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RunParagraphWithParametersRequest.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RunParagraphWithParametersRequest.java index 48401d8..be703da 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RunParagraphWithParametersRequest.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/RunParagraphWithParametersRequest.java @@ -17,16 +17,21 @@ package org.apache.zeppelin.rest.message; import com.google.gson.Gson; + import java.util.Map; + import org.apache.zeppelin.common.JsonSerializable; -/** RunParagraphWithParametersRequest rest api request message. */ +/** + * RunParagraphWithParametersRequest rest api request message. + */ public class RunParagraphWithParametersRequest implements JsonSerializable { private static final Gson gson = new Gson(); Map<String, Object> params; - public RunParagraphWithParametersRequest() {} + public RunParagraphWithParametersRequest() { + } public Map<String, Object> getParams() { return params; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/UpdateInterpreterSettingRequest.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/UpdateInterpreterSettingRequest.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/UpdateInterpreterSettingRequest.java index 2a12c89..cc446e2 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/UpdateInterpreterSettingRequest.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/UpdateInterpreterSettingRequest.java @@ -17,14 +17,18 @@ package org.apache.zeppelin.rest.message; import com.google.gson.Gson; + import java.util.List; import java.util.Map; + import org.apache.zeppelin.common.JsonSerializable; import org.apache.zeppelin.dep.Dependency; import org.apache.zeppelin.interpreter.InterpreterOption; import org.apache.zeppelin.interpreter.InterpreterProperty; -/** UpdateInterpreterSetting rest api request message. */ +/** + * UpdateInterpreterSetting rest api request message. + */ public class UpdateInterpreterSettingRequest implements JsonSerializable { private static final Gson gson = new Gson(); @@ -32,10 +36,8 @@ public class UpdateInterpreterSettingRequest implements JsonSerializable { List<Dependency> dependencies; InterpreterOption option; - public UpdateInterpreterSettingRequest( - Map<String, InterpreterProperty> properties, - List<Dependency> dependencies, - InterpreterOption option) { + public UpdateInterpreterSettingRequest(Map<String, InterpreterProperty> properties, + List<Dependency> dependencies, InterpreterOption option) { this.properties = properties; this.dependencies = dependencies; this.option = option; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/UpdateParagraphRequest.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/UpdateParagraphRequest.java b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/UpdateParagraphRequest.java index 5e343d0..9b0db40 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/UpdateParagraphRequest.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/rest/message/UpdateParagraphRequest.java @@ -16,12 +16,15 @@ */ package org.apache.zeppelin.rest.message; -/** UpdateParagraphRequest. */ +/** + * UpdateParagraphRequest. + */ public class UpdateParagraphRequest { String title; String text; - public UpdateParagraphRequest() {} + public UpdateParagraphRequest() { + } public String getTitle() { return title; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/server/CorsFilter.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/server/CorsFilter.java b/zeppelin-server/src/main/java/org/apache/zeppelin/server/CorsFilter.java index da30187..efbd8c5 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/server/CorsFilter.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/server/CorsFilter.java @@ -16,8 +16,12 @@ */ package org.apache.zeppelin.server; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.IOException; import java.net.URISyntaxException; + import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; @@ -26,12 +30,13 @@ import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; + import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.utils.SecurityUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -/** Cors filter. */ +/** + * Cors filter. + */ public class CorsFilter implements Filter { private static final Logger LOGGER = LoggerFactory.getLogger(CorsFilter.class); http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/server/JsonResponse.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/server/JsonResponse.java b/zeppelin-server/src/main/java/org/apache/zeppelin/server/JsonResponse.java index b7fe773..fcb4ea8 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/server/JsonResponse.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/server/JsonResponse.java @@ -18,7 +18,9 @@ package org.apache.zeppelin.server; import com.google.gson.Gson; import com.google.gson.GsonBuilder; + import java.util.ArrayList; + import javax.ws.rs.core.NewCookie; import javax.ws.rs.core.Response.ResponseBuilder; http://git-wip-us.apache.org/repos/asf/zeppelin/blob/0d746fa2/zeppelin-server/src/main/java/org/apache/zeppelin/service/ConfigurationService.java ---------------------------------------------------------------------- diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/service/ConfigurationService.java b/zeppelin-server/src/main/java/org/apache/zeppelin/service/ConfigurationService.java index 40a27ff..280449b 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/service/ConfigurationService.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/service/ConfigurationService.java @@ -15,15 +15,17 @@ * limitations under the License. */ + package org.apache.zeppelin.service; -import java.io.IOException; -import java.util.Map; import javax.inject.Inject; import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.io.IOException; +import java.util.Map; + public class ConfigurationService { private static final Logger LOGGER = LoggerFactory.getLogger(ConfigurationService.class); @@ -35,30 +37,27 @@ public class ConfigurationService { this.zConf = zConf; } - public Map<String, String> getAllProperties( - ServiceContext context, ServiceCallback<Map<String, String>> callback) throws IOException { - Map<String, String> properties = - zConf.dumpConfigurations( - key -> - !key.contains("password") - && !key.equals( - ZeppelinConfiguration.ConfVars.ZEPPELIN_NOTEBOOK_AZURE_CONNECTION_STRING - .getVarName())); + public Map<String, String> getAllProperties(ServiceContext context, + ServiceCallback<Map<String, String>> callback) + throws IOException { + Map<String, String> properties = zConf.dumpConfigurations(key -> + !key.contains("password") && + !key.equals(ZeppelinConfiguration.ConfVars + .ZEPPELIN_NOTEBOOK_AZURE_CONNECTION_STRING.getVarName())); callback.onSuccess(properties, context); return properties; } - public Map<String, String> getPropertiesWithPrefix( - String prefix, ServiceContext context, ServiceCallback<Map<String, String>> callback) + public Map<String, String> getPropertiesWithPrefix(String prefix, + ServiceContext context, + ServiceCallback<Map<String, String>> callback) throws IOException { - Map<String, String> properties = - zConf.dumpConfigurations( - key -> - !key.contains("password") - && !key.equals( - ZeppelinConfiguration.ConfVars.ZEPPELIN_NOTEBOOK_AZURE_CONNECTION_STRING - .getVarName()) - && key.startsWith(prefix)); + Map<String, String> properties = zConf.dumpConfigurations(key -> + !key.contains("password") && + !key.equals(ZeppelinConfiguration.ConfVars + .ZEPPELIN_NOTEBOOK_AZURE_CONNECTION_STRING + .getVarName()) && + key.startsWith(prefix)); callback.onSuccess(properties, context); return properties; }
