Merge "Enable long-running processes in ControllerExecutionBB"
[so.git] / common / src / main / java / org / onap / so / client / AddCacheHeaders.java
1 package org.onap.so.client;
2
3 import java.io.IOException;
4 import java.util.Collections;
5 import javax.annotation.Priority;
6 import javax.ws.rs.client.ClientRequestContext;
7 import javax.ws.rs.client.ClientResponseContext;
8 import javax.ws.rs.client.ClientResponseFilter;
9 import javax.ws.rs.ext.Provider;
10
11 @Provider
12 @Priority(1)
13 public class AddCacheHeaders implements ClientResponseFilter {
14
15     private final CacheProperties props;
16
17     public AddCacheHeaders(CacheProperties props) {
18         this.props = props;
19     }
20
21     public void filter(ClientRequestContext request, ClientResponseContext response) throws IOException {
22         if (request.getMethod().equalsIgnoreCase("GET")) {
23             response.getHeaders().putIfAbsent("Cache-Control",
24                     Collections.singletonList("public, max-age=" + (props.getMaxAge() / 1000)));
25         }
26
27     }
28 }