public class FeedResource extends BaseLoggingClass {
private ResponseBuilder responseBuilder = new ResponseBuilder();
+ private RequiredChecker checker = new RequiredChecker();
@GET
@ApiOperation( value = "return Feed details",
ApiService resp = new ApiService();
try {
- resp.required( "feedName", feed.getFeedName(), "");
- resp.required( "feedVersion", feed.getFeedVersion(), "");
- resp.required( "owner", feed.getOwner(), "" );
- resp.required( "asprClassification", feed.getAsprClassification(), "" );
+ checker.required( "feedName", feed.getFeedName());
+ checker.required( "feedVersion", feed.getFeedVersion());
+ checker.required( "owner", feed.getOwner());
+ checker.required( "asprClassification", feed.getAsprClassification());
} catch ( RequiredFieldException rfe ) {
- logger.debug( resp.toString() );
- return responseBuilder.error(resp.getErr());
+ logger.debug( rfe.getApiError().toString() );
+ return responseBuilder.error(rfe.getApiError());
}
ApiService resp = new ApiService();
try {
- resp.required( "feedId", id, "");
+ checker.required( "feedId", id);
} catch ( RequiredFieldException rfe ) {
- logger.debug( resp.toString() );
- return responseBuilder.error(resp.getErr());
+ logger.debug( rfe.getApiError().toString() );
+ return responseBuilder.error(rfe.getApiError());
}
Feed nfeed = feedService.getFeed( id, resp.getErr() );
}
return responseBuilder.success(nfeed);
}
+
+ @PUT
+ @ApiOperation( value = "sync feeds to existing DR",
+ notes = "When Bus Controller is deployed after DR, then it is possible"
+ + "that DR has previous provisioning data that needs to be imported"
+ + "into Bus Controller.",
+ response = Feed.class )
+ @ApiResponses( value = {
+ @ApiResponse( code = 200, message = "Success", response = Feed.class),
+ @ApiResponse( code = 400, message = "Error", response = ApiError.class )
+ })
+ @Path( "/sync")
+ public Response syncFeeds (
+ @QueryParam("hard") String hardParam
+ ) {
+ ApiService resp = new ApiService();
+
+ FeedService feedService = new FeedService();
+ boolean hard = false;
+ if ( hardParam != null && hardParam.equalsIgnoreCase("true")) {
+ hard = true;
+ }
+ feedService.sync( hard, resp.getErr() );
+ if ( resp.getErr().is2xx()) {
+ List<Feed> nfeeds = feedService.getAllFeeds();
+ GenericEntity<List<Feed>> list = new GenericEntity<List<Feed>>(nfeeds) {
+ };
+ return responseBuilder.success(list);
+ }
+ return responseBuilder.error(resp.getErr());
+ }
+
}