2016-11-25 15:42:29 +01:00
|
|
|
package org.gcube.smartgears.extensions.resource;
|
|
|
|
|
2023-03-31 14:16:23 +02:00
|
|
|
import static org.gcube.smartgears.Constants.application_json;
|
2016-11-25 15:42:29 +01:00
|
|
|
import static org.gcube.smartgears.extensions.HttpExtension.Method.GET;
|
|
|
|
|
|
|
|
import java.io.IOException;
|
|
|
|
|
2024-03-11 10:22:25 +01:00
|
|
|
import jakarta.servlet.ServletException;
|
|
|
|
import jakarta.servlet.http.HttpServletRequest;
|
|
|
|
import jakarta.servlet.http.HttpServletResponse;
|
2016-11-25 15:42:29 +01:00
|
|
|
|
2023-03-31 14:16:23 +02:00
|
|
|
import org.gcube.com.fasterxml.jackson.databind.ObjectMapper;
|
2016-11-25 15:42:29 +01:00
|
|
|
import org.gcube.smartgears.configuration.application.ApplicationConfiguration;
|
|
|
|
import org.gcube.smartgears.extensions.ApiResource;
|
|
|
|
import org.gcube.smartgears.extensions.ApiSignature;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* An {@link ApiResource} of {@link RemoteResource} at {@link #mapping}.
|
|
|
|
*
|
|
|
|
* @author Fabio Simeoni
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
public class ConfigurationResource extends ApiResource {
|
|
|
|
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
|
|
|
|
public static final String mapping = "/configuration";
|
|
|
|
|
2023-03-31 14:16:23 +02:00
|
|
|
private static final ApiSignature signature = handles(mapping).with(method(GET).produces(application_json));
|
2016-11-25 15:42:29 +01:00
|
|
|
|
|
|
|
ConfigurationResource() {
|
|
|
|
super(signature);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
|
|
|
|
|
2023-02-06 17:34:18 +01:00
|
|
|
ApplicationConfiguration config = context().configuration();
|
2023-03-31 14:16:23 +02:00
|
|
|
new ObjectMapper().writeValue(resp.getWriter(), config);
|
2016-11-25 15:42:29 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
}
|