Java tutorial
/* * Copyright 2017 ThoughtWorks, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package cd.go.authentication.passwordfile.executor; import cd.go.authentication.passwordfile.utils.Util; import com.google.gson.Gson; import com.google.gson.JsonObject; import com.thoughtworks.go.plugin.api.response.DefaultGoPluginApiResponse; import com.thoughtworks.go.plugin.api.response.GoPluginApiResponse; import org.apache.commons.codec.binary.Base64; public class GetPluginIconExecutor implements RequestExecutor { private static final Gson GSON = new Gson(); @Override public GoPluginApiResponse execute() throws Exception { JsonObject jsonObject = new JsonObject(); jsonObject.addProperty("content_type", getContentType()); jsonObject.addProperty("data", Base64.encodeBase64String(Util.readResourceBytes(getIcon()))); DefaultGoPluginApiResponse defaultGoPluginApiResponse = new DefaultGoPluginApiResponse(200, GSON.toJson(jsonObject)); return defaultGoPluginApiResponse; } private String getContentType() { return "image/png"; } private String getIcon() { return "/gocd_72_72_icon.png"; } }