Skip to content
Snippets Groups Projects

update: Update to SDK 1.1.7 and add HTTP caching to resources

Merged Martin Lowe requested to merge malowe/main/http-caching into main
2 files
+ 9
1
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -21,6 +21,7 @@ import org.apache.commons.lang3.StringUtils;
@@ -21,6 +21,7 @@ import org.apache.commons.lang3.StringUtils;
import org.eclipsefoundation.efservices.api.models.EfUser;
import org.eclipsefoundation.efservices.api.models.EfUser;
import org.eclipsefoundation.efservices.services.ProfileService;
import org.eclipsefoundation.efservices.services.ProfileService;
import org.eclipsefoundation.http.model.RequestWrapper;
import org.eclipsefoundation.http.model.RequestWrapper;
 
import org.eclipsefoundation.http.namespace.CacheControlCommonValues;
import org.eclipsefoundation.mailing.dto.MailingListSubscriptions;
import org.eclipsefoundation.mailing.dto.MailingListSubscriptions;
import org.eclipsefoundation.mailing.dto.MailingLists;
import org.eclipsefoundation.mailing.dto.MailingLists;
import org.eclipsefoundation.mailing.namespace.MailingListUrlParameterNames;
import org.eclipsefoundation.mailing.namespace.MailingListUrlParameterNames;
@@ -28,6 +29,7 @@ import org.eclipsefoundation.persistence.dao.impl.DefaultHibernateDao;
@@ -28,6 +29,7 @@ import org.eclipsefoundation.persistence.dao.impl.DefaultHibernateDao;
import org.eclipsefoundation.persistence.model.RDBMSQuery;
import org.eclipsefoundation.persistence.model.RDBMSQuery;
import org.eclipsefoundation.persistence.service.FilterService;
import org.eclipsefoundation.persistence.service.FilterService;
import org.eclipsefoundation.utils.helper.TransformationHelper;
import org.eclipsefoundation.utils.helper.TransformationHelper;
 
import org.jboss.resteasy.reactive.Cache;
import org.slf4j.Logger;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.slf4j.LoggerFactory;
@@ -68,6 +70,7 @@ public class MailingListsResource {
@@ -68,6 +70,7 @@ public class MailingListsResource {
* @return A Response containing all MailingLists filtered by username. A 404 Response when the user does not exist.
* @return A Response containing all MailingLists filtered by username. A 404 Response when the user does not exist.
*/
*/
@GET
@GET
 
@Cache(maxAge = CacheControlCommonValues.SAFE_CACHE_MAX_AGE)
public Response all(@QueryParam("username") String username) {
public Response all(@QueryParam("username") String username) {
MultivaluedMap<String, String> params = getDefaultParams();
MultivaluedMap<String, String> params = getDefaultParams();
// check for user to retrieve
// check for user to retrieve
@@ -95,6 +98,7 @@ public class MailingListsResource {
@@ -95,6 +98,7 @@ public class MailingListsResource {
*/
*/
@GET
@GET
@Path("{listName}")
@Path("{listName}")
 
@Cache(maxAge = CacheControlCommonValues.AGGRESSIVE_CACHE_MAX_AGE)
public Response mailingList(@PathParam("listName") String listName) {
public Response mailingList(@PathParam("listName") String listName) {
MultivaluedMap<String, String> params = getDefaultParams();
MultivaluedMap<String, String> params = getDefaultParams();
params.add(MailingListUrlParameterNames.LIST_NAME.getName(), listName);
params.add(MailingListUrlParameterNames.LIST_NAME.getName(), listName);
@@ -118,6 +122,7 @@ public class MailingListsResource {
@@ -118,6 +122,7 @@ public class MailingListsResource {
*/
*/
@GET
@GET
@Path("available")
@Path("available")
 
@Cache(maxAge = CacheControlCommonValues.AGGRESSIVE_CACHE_MAX_AGE)
public Response available() {
public Response available() {
List<MailingLists> mailingLists = dao
List<MailingLists> mailingLists = dao
.get(new RDBMSQuery<>(wrap, filters.get(MailingLists.class), getAvailableListParams()));
.get(new RDBMSQuery<>(wrap, filters.get(MailingLists.class), getAvailableListParams()));
@@ -133,6 +138,7 @@ public class MailingListsResource {
@@ -133,6 +138,7 @@ public class MailingListsResource {
*/
*/
@GET
@GET
@Path("projects")
@Path("projects")
 
@Cache(maxAge = CacheControlCommonValues.AGGRESSIVE_CACHE_MAX_AGE)
public Response getByProjects() {
public Response getByProjects() {
List<MailingLists> mailingLists = dao
List<MailingLists> mailingLists = dao
.get(new RDBMSQuery<>(wrap, filters.get(MailingLists.class), getDefaultParams()));
.get(new RDBMSQuery<>(wrap, filters.get(MailingLists.class), getDefaultParams()));
@@ -153,6 +159,7 @@ public class MailingListsResource {
@@ -153,6 +159,7 @@ public class MailingListsResource {
*/
*/
@GET
@GET
@Path("projects/{projectId}")
@Path("projects/{projectId}")
 
@Cache(maxAge = CacheControlCommonValues.AGGRESSIVE_CACHE_MAX_AGE)
public Response getForProjectByID(@PathParam("projectId") String projectId) {
public Response getForProjectByID(@PathParam("projectId") String projectId) {
MultivaluedMap<String, String> params = getDefaultParams();
MultivaluedMap<String, String> params = getDefaultParams();
params.add(MailingListUrlParameterNames.PROJECT_ID.getName(), projectId);
params.add(MailingListUrlParameterNames.PROJECT_ID.getName(), projectId);
@@ -172,6 +179,7 @@ public class MailingListsResource {
@@ -172,6 +179,7 @@ public class MailingListsResource {
*/
*/
@GET
@GET
@Path("projects/available")
@Path("projects/available")
 
@Cache(maxAge = CacheControlCommonValues.AGGRESSIVE_CACHE_MAX_AGE)
public Response getByProjectsAvailable() {
public Response getByProjectsAvailable() {
List<MailingLists> mailingLists = dao
List<MailingLists> mailingLists = dao
.get(new RDBMSQuery<>(wrap, filters.get(MailingLists.class), getAvailableListParams()));
.get(new RDBMSQuery<>(wrap, filters.get(MailingLists.class), getAvailableListParams()));
Loading