diff --git a/src/main/java/uk/org/iay/incommon/validator/api/ValidatorsApiController.java b/src/main/java/uk/org/iay/incommon/validator/api/ValidatorsApiController.java
index c0c41d2..16c268c 100644
--- a/src/main/java/uk/org/iay/incommon/validator/api/ValidatorsApiController.java
+++ b/src/main/java/uk/org/iay/incommon/validator/api/ValidatorsApiController.java
@@ -1,7 +1,20 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 
 package uk.org.iay.incommon.validator.api;
 
-import java.io.IOException;
+import java.util.ArrayList;
 import java.util.List;
 
 import javax.servlet.http.HttpServletRequest;
@@ -9,69 +22,96 @@
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestBody;
 
-import com.fasterxml.jackson.databind.ObjectMapper;
-
 import io.swagger.annotations.ApiParam;
 import uk.org.iay.incommon.validator.models.Status;
+import uk.org.iay.incommon.validator.models.Status.StatusEnum;
 import uk.org.iay.incommon.validator.models.Validator;
 
-@javax.annotation.Generated(value = "io.swagger.codegen.languages.SpringCodegen",
-        date = "2018-05-11T08:14:22.184+01:00")
-
+/**
+ * Controller for the Validators API.
+ */
 @Controller
 public class ValidatorsApiController implements ValidatorsApi {
 
-    private static final Logger log = LoggerFactory.getLogger(ValidatorsApiController.class);
-
-    private final ObjectMapper objectMapper;
+    /** Class logger. */
+    private static final Logger LOG = LoggerFactory.getLogger(ValidatorsApiController.class);
 
+    /** Current {@link HttpServletRequest}. */
     private final HttpServletRequest request;
 
-    @org.springframework.beans.factory.annotation.Autowired
-    public ValidatorsApiController(ObjectMapper objectMapper, HttpServletRequest request) {
-        this.objectMapper = objectMapper;
-        this.request = request;
+    /**
+     * Constructor.
+     *
+     * @param req current {@link HttpServletRequest}.
+     */
+    @Autowired
+    public ValidatorsApiController(final HttpServletRequest req) {
+        request = req;
+    }
+
+    /**
+     * Make a {@link Validator} from an identifier and description.
+     *
+     * @param id identifier for the validator
+     * @param description description of the validator
+     * @return a {@link Validator}
+     */
+    private Validator makeValidator(final String id, final String description) {
+        final Validator v = new Validator();
+        v.setValidatorId(id);
+        v.setDescription(description);
+        return v;
     }
 
+    @Override
     public ResponseEntity<List<Validator>> getValidators() {
-        String accept = request.getHeader("Accept");
+        final String accept = request.getHeader("Accept");
         if (accept != null && accept.contains("application/json")) {
-            try {
-                return new ResponseEntity<List<Validator>>(objectMapper.readValue(
-                        "[ {  \"validator_id\" : \"eduGAIN\",  \"description\" : \"validation ruleset for entities from eduGAIN\"}, {  \"validator_id\" : \"eduGAIN\",  \"description\" : \"validation ruleset for entities from eduGAIN\"} ]",
-                        List.class), HttpStatus.NOT_IMPLEMENTED);
-            } catch (IOException e) {
-                log.error("Couldn't serialize response for content type application/json", e);
-                return new ResponseEntity<List<Validator>>(HttpStatus.INTERNAL_SERVER_ERROR);
-            }
+            final List<Validator> validators = new ArrayList<>();
+            validators.add(makeValidator("default", "default validation pipeline"));
+            validators.add(makeValidator("eduGAIN", "eduGAIN validation pipeline"));
+            return new ResponseEntity<List<Validator>>(validators, HttpStatus.NOT_IMPLEMENTED);
         }
 
         return new ResponseEntity<List<Validator>>(HttpStatus.NOT_IMPLEMENTED);
     }
 
+    /**
+     * Make a {@link Status} from its components.
+     *
+     * @param status a {@link StatusEnum} indicating the kind of status
+     * @param componentId identifier for the generating component
+     * @param message message associated with the status
+     * @return a {@link Status}
+     */
+    private Status makeStatus(final StatusEnum status, final String componentId, final String message) {
+        final Status s = new Status();
+        s.setStatus(status);
+        return s;
+    }
+
+    @Override
     public ResponseEntity<List<Status>> validate(
-            @ApiParam(value = "An identifier for the validation to be performed. ",
-                    required = true) @PathVariable("validator_id") String validatorId,
-            @ApiParam(value = "The metadata to be validated.", required = true) @Valid @RequestBody String metadata) {
-        String accept = request.getHeader("Accept");
+            @ApiParam(value = "An identifier for the validation to be performed.", required = true)
+                @PathVariable("validator_id")
+                final String validatorId,
+            @ApiParam(value = "The metadata to be validated.", required = true) @Valid @RequestBody
+                final String metadata) {
+        final String accept = request.getHeader("Accept");
         if (accept != null && accept.contains("application/json")) {
-            try {
-                return new ResponseEntity<List<Status>>(objectMapper.readValue(
-                        "[ {  \"status\" : \"error\",  \"componentId\" : \"checkSchemas\",  \"message\" : \"the entityID doesn't have the correct format\"}, {  \"status\" : \"error\",  \"componentId\" : \"checkSchemas\",  \"message\" : \"the entityID doesn't have the correct format\"} ]",
-                        List.class), HttpStatus.NOT_IMPLEMENTED);
-            } catch (IOException e) {
-                log.error("Couldn't serialize response for content type application/json", e);
-                return new ResponseEntity<List<Status>>(HttpStatus.INTERNAL_SERVER_ERROR);
-            }
+            final List<Status> statuses = new ArrayList<>();
+            statuses.add(makeStatus(StatusEnum.ERROR, "component", "message"));
+            statuses.add(makeStatus(StatusEnum.WARNING, "component/sub", "another message"));
+            return new ResponseEntity<List<Status>>(statuses, HttpStatus.NOT_IMPLEMENTED);
         }
 
         return new ResponseEntity<List<Status>>(HttpStatus.NOT_IMPLEMENTED);
     }
-
 }
diff --git a/src/main/java/uk/org/iay/incommon/validator/api/package-info.java b/src/main/java/uk/org/iay/incommon/validator/api/package-info.java
index 91c5138..1897073 100644
--- a/src/main/java/uk/org/iay/incommon/validator/api/package-info.java
+++ b/src/main/java/uk/org/iay/incommon/validator/api/package-info.java
@@ -1,3 +1,17 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 /**
  * API classes for the metadata validator service.
  */