Skip to content

Commit f2ce158

Browse files
AS-3017: Create CodeEndpointsImpl.
1 parent 22f897c commit f2ce158

File tree

2 files changed

+48
-0
lines changed

2 files changed

+48
-0
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package ca.bc.gov.farms.api.rest.v1.endpoints.impl;
2+
3+
import javax.ws.rs.core.Response;
4+
import javax.ws.rs.core.Response.Status;
5+
6+
import org.slf4j.Logger;
7+
import org.slf4j.LoggerFactory;
8+
import org.springframework.beans.factory.annotation.Autowired;
9+
10+
import ca.bc.gov.farms.api.rest.v1.endpoints.CodeEndpoints;
11+
import ca.bc.gov.farms.api.rest.v1.resource.CodeRsrc;
12+
import ca.bc.gov.farms.service.api.v1.code.CodeService;
13+
import ca.bc.gov.nrs.wfone.common.service.api.NotFoundException;
14+
15+
public class CodeEndpointsImpl extends BaseEndpointsImpl implements CodeEndpoints {
16+
17+
private static final Logger logger = LoggerFactory.getLogger(CodeEndpointsImpl.class);
18+
19+
@Autowired
20+
private CodeService service;
21+
22+
@Override
23+
public Response getCode(String codeTableName, String codeName) {
24+
logger.debug("<getCode");
25+
Response response = null;
26+
27+
logRequest();
28+
29+
try {
30+
31+
CodeRsrc result = (CodeRsrc) service.getCode(codeTableName, codeName, getFactoryContext());
32+
33+
response = Response.ok(result).tag(result.getUnquotedETag()).build();
34+
} catch (NotFoundException e) {
35+
response = Response.status(Status.NOT_FOUND).build();
36+
37+
} catch (Throwable t) {
38+
response = getInternalServerErrorResponse(t);
39+
}
40+
41+
logResponse(response);
42+
43+
logger.debug(">getCode " + response);
44+
return response;
45+
}
46+
}

farms-api/farms-api-rest-endpoints/src/main/java/ca/bc/gov/farms/api/rest/v1/jersey/JerseyApplication.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import org.slf4j.Logger;
77
import org.slf4j.LoggerFactory;
88

9+
import ca.bc.gov.farms.api.rest.v1.endpoints.impl.CodeEndpointsImpl;
910
import ca.bc.gov.farms.api.rest.v1.endpoints.impl.CodeTableEndpointsImpl;
1011
import ca.bc.gov.farms.api.rest.v1.endpoints.impl.CodeTableListEndpointsImpl;
1112
import ca.bc.gov.farms.api.rest.v1.endpoints.impl.TopLevelEndpointsImpl;
@@ -26,6 +27,7 @@ public JerseyApplication(@Context ServletConfig servletConfig) {
2627
register(TopLevelEndpointsImpl.class);
2728
register(CodeTableEndpointsImpl.class);
2829
register(CodeTableListEndpointsImpl.class);
30+
register(CodeEndpointsImpl.class);
2931

3032
logger.debug(">JerseyApplication");
3133
}

0 commit comments

Comments
 (0)