-/*
- * Copyright 2012-2015 the original author or authors.
+/*
+ * ============LICENSE_START==========================================
+ * org.onap.music
+ * ===================================================================
+ * Copyright (c) 2019 AT&T Intellectual Property
+ * ===================================================================
+ * 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
*
- * 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
*
- * 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.
*
- * 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 org.onap.music;
-
+ * ============LICENSE_END=============================================
+ * ====================================================================
+ */
+
+package org.onap.music;
+
+import io.swagger.jaxrs.config.BeanConfig;
+import io.swagger.jaxrs.listing.ApiListingResource;
+import io.swagger.jaxrs.listing.SwaggerSerializers;
+
import javax.annotation.PostConstruct;
-import javax.ws.rs.ApplicationPath;
-import org.glassfish.jersey.server.ResourceConfig;
-import org.onap.music.rest.RestMusicAdminAPI;
+
+import org.glassfish.jersey.server.ResourceConfig;
+import org.onap.music.conductor.conditionals.RestMusicConditionalAPI;
+import org.onap.music.exceptions.MusicExceptionMapper;
import org.onap.music.rest.RestMusicDataAPI;
import org.onap.music.rest.RestMusicHealthCheckAPI;
import org.onap.music.rest.RestMusicLocksAPI;
import org.onap.music.rest.RestMusicVersionAPI;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
-import io.swagger.jaxrs.config.BeanConfig;
-import io.swagger.jaxrs.listing.ApiListingResource;
-import io.swagger.jaxrs.listing.SwaggerSerializers;
-
-@Component
-public class JerseyConfig extends ResourceConfig {
-
- @Value("${spring.jersey.application-path:/}")
+
+@Component
+public class JerseyConfig extends ResourceConfig {
+
+ @Value("${spring.jersey.application-path:/}")
private String apiPath;
-
+
public JerseyConfig() {
this.registerEndpoints();
+ register(MusicExceptionMapper.class);
}
-
+
@PostConstruct
public void init() {
this.configureSwagger();
}
-
+
private void registerEndpoints() {
- register(RestMusicAdminAPI.class);
- register(RestMusicDataAPI.class);
+ register(RestMusicDataAPI.class);
register(RestMusicLocksAPI.class);
+ register(RestMusicConditionalAPI.class);
register(RestMusicQAPI.class);
register(RestMusicTestAPI.class);
register(RestMusicVersionAPI.class);
register(RestMusicHealthCheckAPI.class);
- }
+ }
+
private void configureSwagger() {
// Available at localhost:port/swagger.json
this.register(ApiListingResource.class);
config.setTitle("MUSIC");
config.setVersion("v2");
config.setContact("Thomas Nelson");
- config.setSchemes(new String[] { "http", "https" });
+ config.setSchemes(new String[] {"http", "https"});
config.setBasePath("/MUSIC/rest");
config.setResourcePackage("org.onap.music");
config.setPrettyPrint(true);
config.setScan(true);
}
-
+
}