diff --git a/NOTICE b/NOTICE index 0469d4b9b7ff2bbf51cc9f677d962e92746e5d4e..40c988551b5d1f392093ac86931b88be67e183bd 100644 --- a/NOTICE +++ b/NOTICE @@ -66,15 +66,13 @@ The following software have components provided under the terms of this license: - Guava ListenableFuture only (from https://repo1.maven.org/maven2/com/google/guava/listenablefuture) - Guava: Google Core Libraries for Java (from http://code.google.com/p/guava-libraries, https://github.com/google/guava, https://repo1.maven.org/maven2/com/google/guava/guava) - HTTP functionality for the Reactor Netty library (from https://github.com/reactor/reactor-netty) -- Hibernate Validator (from https://repo1.maven.org/maven2/org/hibernate/hibernate-validator, https://repo1.maven.org/maven2/org/hibernate/validator/hibernate-validator) +- Hibernate Validator (from http://hibernate.org/validator, https://repo1.maven.org/maven2/org/hibernate/hibernate-validator, https://repo1.maven.org/maven2/org/hibernate/validator/hibernate-validator) - IBM COS Java SDK for Amazon S3 (from https://github.com/ibm/ibm-cos-sdk-java) - IBM COS Java SDK for COS KMS (from https://github.com/ibm/ibm-cos-sdk-java) - IBM COS SDK For Java (from https://github.com/ibm/ibm-cos-sdk-java) - IBM COS SDK for Java - Core (from https://github.com/ibm/ibm-cos-sdk-java) - J2ObjC Annotations (from https://github.com/google/j2objc/) - JBoss Logging 3 (from http://www.jboss.org) -- JBoss Marshalling API (from https://repo1.maven.org/maven2/org/jboss/marshalling/jboss-marshalling) -- JBoss Marshalling River (from https://repo1.maven.org/maven2/org/jboss/marshalling/jboss-marshalling-river) - JCIP Annotations under Apache License (from http://stephenc.github.com/jcip-annotations) - JJWT :: API (from https://repo1.maven.org/maven2/io/jsonwebtoken/jjwt-api) - JJWT :: Extensions :: Jackson (from https://repo1.maven.org/maven2/io/jsonwebtoken/jjwt-jackson) @@ -245,14 +243,15 @@ The following software have components provided under the terms of this license: - Hamcrest (from http://hamcrest.org/JavaHamcrest/) - Hamcrest Core (from http://hamcrest.org/, http://hamcrest.org/JavaHamcrest/, https://repo1.maven.org/maven2/org/hamcrest/hamcrest-core) - HdrHistogram (from http://hdrhistogram.github.io/HdrHistogram/) -- Jodd BeanUtil (from http://jodd.org) -- Jodd Core (from http://jodd.org) +- Jodd Util (from https://util.jodd.org) - LatencyUtils (from http://latencyutils.github.io/LatencyUtils/) - Lucene Common Analyzers (from <https://repo1.maven.org/maven2/org/apache/lucene/lucene-analyzers-common>, https://repo1.maven.org/maven2/org/apache/lucene/lucene-analyzers-common) - Lucene Queries (from https://lucene.apache.org/, https://repo1.maven.org/maven2/org/apache/lucene/lucene-queries) - Lucene QueryParsers (from https://lucene.apache.org/, https://repo1.maven.org/maven2/org/apache/lucene/lucene-queryparser) - Lucene Sandbox (from https://lucene.apache.org/, https://repo1.maven.org/maven2/org/apache/lucene/lucene-sandbox) +- MinLog (from https://github.com/EsotericSoftware/minlog) - Plexus Common Utilities (from http://plexus.codehaus.org/plexus-utils, https://codehaus-plexus.github.io/plexus-utils/, https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-utils) +- ReflectASM (from https://github.com/EsotericSoftware/reflectasm) - Stax2 API (from http://github.com/FasterXML/stax2-api) ======================================================================== @@ -271,15 +270,18 @@ The following software have components provided under the terms of this license: - Jakarta Annotations API (from https://projects.eclipse.org/projects/ee4j.ca) - Jakarta Messaging API (from https://projects.eclipse.org/projects/ee4j.jms) - Jakarta XML Binding API (from https://repo1.maven.org/maven2/jakarta/xml/bind/jakarta.xml.bind-api, https://repo1.maven.org/maven2/org/jboss/spec/javax/xml/bind/jboss-jaxb-api_2.3_spec) +- Kryo (from https://repo1.maven.org/maven2/com/esotericsoftware/kryo) - Lucene Common Analyzers (from <https://repo1.maven.org/maven2/org/apache/lucene/lucene-analyzers-common>, https://repo1.maven.org/maven2/org/apache/lucene/lucene-analyzers-common) - Lucene Core (from https://repo1.maven.org/maven2/org/apache/lucene/lucene-core) - Lucene Queries (from https://lucene.apache.org/, https://repo1.maven.org/maven2/org/apache/lucene/lucene-queries) - Lucene QueryParsers (from https://lucene.apache.org/, https://repo1.maven.org/maven2/org/apache/lucene/lucene-queryparser) - Lucene Sandbox (from https://lucene.apache.org/, https://repo1.maven.org/maven2/org/apache/lucene/lucene-sandbox) +- MinLog (from https://github.com/EsotericSoftware/minlog) - Netty/Codec/HTTP (from https://repo1.maven.org/maven2/io/netty/netty-codec-http) - Old JAXB Core (from <https://eclipse-ee4j.github.io/jaxb-ri/>, https://eclipse-ee4j.github.io/jaxb-ri/, https://repo1.maven.org/maven2/com/sun/xml/bind/jaxb-impl) - Plexus Common Utilities (from http://plexus.codehaus.org/plexus-utils, https://codehaus-plexus.github.io/plexus-utils/, https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-utils) - Redisson (from http://redisson.org) +- ReflectASM (from https://github.com/EsotericSoftware/reflectasm) - Spring Core (from http://www.springframework.org, https://github.com/spring-projects/spring-framework, https://repo1.maven.org/maven2/org/springframework/spring-core) ======================================================================== @@ -304,9 +306,10 @@ The following software have components provided under the terms of this license: - Guava: Google Core Libraries for Java (from http://code.google.com/p/guava-libraries, https://github.com/google/guava, https://repo1.maven.org/maven2/com/google/guava/guava) - HdrHistogram (from http://hdrhistogram.github.io/HdrHistogram/) -- Hibernate Validator (from https://repo1.maven.org/maven2/org/hibernate/hibernate-validator, https://repo1.maven.org/maven2/org/hibernate/validator/hibernate-validator) +- Hibernate Validator (from http://hibernate.org/validator, https://repo1.maven.org/maven2/org/hibernate/hibernate-validator, https://repo1.maven.org/maven2/org/hibernate/validator/hibernate-validator) - LatencyUtils (from http://latencyutils.github.io/LatencyUtils/) - Netty/Common (from https://repo1.maven.org/maven2/io/netty/netty-common) +- Redisson (from http://redisson.org) - reactive-streams (from http://www.reactive-streams.org/) ======================================================================== diff --git a/provider/unit-azure/unit-aks/pom.xml b/provider/unit-azure/unit-aks/pom.xml index 4b4e8c5ee6a2bb39aa5ab92bf1ec8011b978f99e..228879a8f76ccfb21428b79791ad6042a689958f 100644 --- a/provider/unit-azure/unit-aks/pom.xml +++ b/provider/unit-azure/unit-aks/pom.xml @@ -26,7 +26,7 @@ <maven.compiler.showDeprecation>true</maven.compiler.showDeprecation> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> - <core-lib-azure-spring6.version>0.27.0-rc4</core-lib-azure-spring6.version> + <core-lib-azure-spring6.version>0.27.0-rc7</core-lib-azure-spring6.version> </properties> <dependencies> diff --git a/testing/unit_test_core/test_unit_service_v3.py b/testing/unit_test_core/test_unit_service_v3.py index 35187d948f18c1951a65ea356cd3ae6b7bc23289..d020ad095d3b5756be7c28a6badccab6dd71cd6b 100644 --- a/testing/unit_test_core/test_unit_service_v3.py +++ b/testing/unit_test_core/test_unit_service_v3.py @@ -6,7 +6,7 @@ import json from unit_test_core.v3.swagger_client.rest import ApiException -from unit_test_core.v3.swagger_client import Unitapiv3Api, Configuration, ApiClient, InfoapiApi +from unit_test_core.v3.swagger_client import Unitapiv3Api, Configuration, ApiClient, InfoapiApi, InfoapiApiSlash from unit_test_core.v3.swagger_client.models import CatalogLastModified, Catalog, ConnectedOuterService, \ QueryResult, SearchRequest, \ UnitSystem, UnitSystemRequest, Unit, MeasurementRequest, MeasurementEssenceImpl, Measurement, \ diff --git a/testing/unit_test_core/v2/swagger_client/apis/info_api_api_slash.py b/testing/unit_test_core/v2/swagger_client/apis/info_api_api_slash.py new file mode 100644 index 0000000000000000000000000000000000000000..6965ed4bddae97e5b4ed8e0f5608ed63f4b07675 --- /dev/null +++ b/testing/unit_test_core/v2/swagger_client/apis/info_api_api_slash.py @@ -0,0 +1,145 @@ +# coding: utf-8 + +""" + Unit Service API + + Unit and Measurement Service + + OpenAPI spec version: 2.0.0 + + Generated by: https://github.com/swagger-api/swagger-codegen.git +""" + + +from __future__ import absolute_import + +import sys +import os +import re + +# python 2 and python 3 compatibility library +from six import iteritems + +from ..configuration import Configuration +from ..api_client import ApiClient + + +class InfoApiApiSlash(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + Ref: https://github.com/swagger-api/swagger-codegen + """ + + def __init__(self, api_client=None): + config = Configuration() + if api_client: + self.api_client = api_client + else: + if not config.api_client: + config.api_client = ApiClient() + self.api_client = config.api_client + + def info_using_get(self, data_partition_id, **kwargs): + """ + info + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.info_using_get(data_partition_id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param str data_partition_id: tenant (required) + :return: VersionInfo + If the method is called asynchronously, + returns the request thread. + """ + kwargs['_return_http_data_only'] = True + if kwargs.get('callback'): + return self.info_using_get_with_http_info(data_partition_id, **kwargs) + else: + (data) = self.info_using_get_with_http_info(data_partition_id, **kwargs) + return data + + def info_using_get_with_http_info(self, data_partition_id, **kwargs): + """ + info + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.info_using_get_with_http_info(data_partition_id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param str data_partition_id: tenant (required) + :return: VersionInfo + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['data_partition_id'] + all_params.append('callback') + all_params.append('_return_http_data_only') + all_params.append('_preload_content') + all_params.append('_request_timeout') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method info_using_get" % key + ) + params[key] = val + del params['kwargs'] + # verify the required parameter 'data_partition_id' is set + if ('data_partition_id' not in params) or (params['data_partition_id'] is None): + raise ValueError("Missing the required parameter `data_partition_id` when calling `info_using_get`") + + + collection_formats = {} + + path_params = {} + + query_params = [] + + header_params = {} + if 'data_partition_id' in params: + header_params['data-partition-id'] = params['data_partition_id'] + + form_params = [] + local_var_files = {} + + body_params = None + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['Bearer', 'google_id_token'] + + return self.api_client.call_api('/info/', 'GET', + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=local_var_files, + response_type='VersionInfo', + auth_settings=auth_settings, + callback=params.get('callback'), + _return_http_data_only=params.get('_return_http_data_only'), + _preload_content=params.get('_preload_content', True), + _request_timeout=params.get('_request_timeout'), + collection_formats=collection_formats) diff --git a/testing/unit_test_core/v2/test/test_info_api_api_slash.py b/testing/unit_test_core/v2/test/test_info_api_api_slash.py new file mode 100644 index 0000000000000000000000000000000000000000..ff43eda70ca338bb3ee079f67bfdf333d6aae7de --- /dev/null +++ b/testing/unit_test_core/v2/test/test_info_api_api_slash.py @@ -0,0 +1,44 @@ +# coding: utf-8 + +""" + Unit Service API + + Unit and Measurement Service + + OpenAPI spec version: 2.0.0 + + Generated by: https://github.com/swagger-api/swagger-codegen.git +""" + + +from __future__ import absolute_import + +import os +import sys +import unittest + +import swagger_client +from swagger_client.rest import ApiException +from swagger_client.apis.info_api_api_slash import InfoApiApiSlash + + +class TestInfoApiApiSlash(unittest.TestCase): + """ InfoApiApiSlash unit test stubs """ + + def setUp(self): + self.api = swagger_client.apis.info_api_api_slash.InfoApiApiSlash() + + def tearDown(self): + pass + + def test_info_using_get(self): + """ + Test case for info_using_get + + info + """ + pass + + +if __name__ == '__main__': + unittest.main() diff --git a/testing/unit_test_core/v3/swagger_client/__init__.py b/testing/unit_test_core/v3/swagger_client/__init__.py index ddbf5a3546dc172528d3f50a3eb79d1f8394e1bf..d6d6615dfa6a9fedfc50da88d79d7dba2d2b7069 100644 --- a/testing/unit_test_core/v3/swagger_client/__init__.py +++ b/testing/unit_test_core/v3/swagger_client/__init__.py @@ -53,6 +53,7 @@ from .models.version_info import VersionInfo # import apis into sdk package from .apis.healthcheck_api import HealthcheckApi from .apis.infoapi_api import InfoapiApi +from .apis.infoapi_api_slash import InfoapiApiSlash from .apis.unitapiv3_api import Unitapiv3Api # import ApiClient diff --git a/testing/unit_test_core/v3/swagger_client/apis/__init__.py b/testing/unit_test_core/v3/swagger_client/apis/__init__.py index 91c62364695a00049256250139cc1af120bdb300..248f37a7a7dbecda824d8de8558f8d8dc219353f 100644 --- a/testing/unit_test_core/v3/swagger_client/apis/__init__.py +++ b/testing/unit_test_core/v3/swagger_client/apis/__init__.py @@ -3,4 +3,5 @@ from __future__ import absolute_import # import apis into api package from .healthcheck_api import HealthcheckApi from .infoapi_api import InfoapiApi +from .infoapi_api_slash import InfoapiApiSlash from .unitapiv3_api import Unitapiv3Api diff --git a/testing/unit_test_core/v3/swagger_client/apis/infoapi_api_slash.py b/testing/unit_test_core/v3/swagger_client/apis/infoapi_api_slash.py new file mode 100644 index 0000000000000000000000000000000000000000..b2c83131fdca525ae695d6c1d844246ed7d6a2eb --- /dev/null +++ b/testing/unit_test_core/v3/swagger_client/apis/infoapi_api_slash.py @@ -0,0 +1,145 @@ +# coding: utf-8 + +""" + Unit API V3 + + No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) + + OpenAPI spec version: 3.0 + + Generated by: https://github.com/swagger-api/swagger-codegen.git +""" + + +from __future__ import absolute_import + +import sys +import os +import re + +# python 2 and python 3 compatibility library +from six import iteritems + +from ..configuration import Configuration +from ..api_client import ApiClient + + +class InfoapiApiSlash(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + Ref: https://github.com/swagger-api/swagger-codegen + """ + + def __init__(self, api_client=None): + config = Configuration() + if api_client: + self.api_client = api_client + else: + if not config.api_client: + config.api_client = ApiClient() + self.api_client = config.api_client + + def info_using_get(self, data_partition_id, **kwargs): + """ + info + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.info_using_get(data_partition_id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param str data_partition_id: tenant (required) + :return: VersionInfo + If the method is called asynchronously, + returns the request thread. + """ + kwargs['_return_http_data_only'] = True + if kwargs.get('callback'): + return self.info_using_get_with_http_info(data_partition_id, **kwargs) + else: + (data) = self.info_using_get_with_http_info(data_partition_id, **kwargs) + return data + + def info_using_get_with_http_info(self, data_partition_id, **kwargs): + """ + info + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.info_using_get_with_http_info(data_partition_id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param str data_partition_id: tenant (required) + :return: VersionInfo + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['data_partition_id'] + all_params.append('callback') + all_params.append('_return_http_data_only') + all_params.append('_preload_content') + all_params.append('_request_timeout') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method info_using_get" % key + ) + params[key] = val + del params['kwargs'] + # verify the required parameter 'data_partition_id' is set + if ('data_partition_id' not in params) or (params['data_partition_id'] is None): + raise ValueError("Missing the required parameter `data_partition_id` when calling `info_using_get`") + + + collection_formats = {} + + path_params = {} + + query_params = [] + + header_params = {} + if 'data_partition_id' in params: + header_params['data-partition-id'] = params['data_partition_id'] + + form_params = [] + local_var_files = {} + + body_params = None + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['Bearer Authorization'] + + return self.api_client.call_api('/v3/info/', 'GET', + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=local_var_files, + response_type='VersionInfo', + auth_settings=auth_settings, + callback=params.get('callback'), + _return_http_data_only=params.get('_return_http_data_only'), + _preload_content=params.get('_preload_content', True), + _request_timeout=params.get('_request_timeout'), + collection_formats=collection_formats) diff --git a/testing/unit_test_core/v3/test/test_infoapi_api_slash.py b/testing/unit_test_core/v3/test/test_infoapi_api_slash.py new file mode 100644 index 0000000000000000000000000000000000000000..cb55fc7ea0535cba0af020f1f98efa43536276ae --- /dev/null +++ b/testing/unit_test_core/v3/test/test_infoapi_api_slash.py @@ -0,0 +1,44 @@ +# coding: utf-8 + +""" + Unit API V3 + + No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) + + OpenAPI spec version: 3.0 + + Generated by: https://github.com/swagger-api/swagger-codegen.git +""" + + +from __future__ import absolute_import + +import os +import sys +import unittest + +import swagger_client +from swagger_client.rest import ApiException +from swagger_client.apis.infoapi_api_slash import InfoapiApiSlash + + +class TestInfoapiApiSlash(unittest.TestCase): + """ InfoapiApiSlash unit test stubs """ + + def setUp(self): + self.api = swagger_client.apis.infoapi_api_slash.InfoapiApiSlash() + + def tearDown(self): + pass + + def test_info_using_get(self): + """ + Test case for info_using_get + + info + """ + pass + + +if __name__ == '__main__': + unittest.main() diff --git a/unit-core/src/main/java/org/opengroup/osdu/unitservice/configuration/SpringWebMvcConfiguration.java b/unit-core/src/main/java/org/opengroup/osdu/unitservice/configuration/SpringWebMvcConfiguration.java index 8e99912a280e3710578d5a78ea22c46e3eacfb7a..1231db5371424731d761800d1a1e0987ec43038e 100644 --- a/unit-core/src/main/java/org/opengroup/osdu/unitservice/configuration/SpringWebMvcConfiguration.java +++ b/unit-core/src/main/java/org/opengroup/osdu/unitservice/configuration/SpringWebMvcConfiguration.java @@ -24,5 +24,6 @@ public class SpringWebMvcConfiguration implements WebMvcConfigurer { UrlPathHelper urlPathHelper = new UrlPathHelper(); urlPathHelper.setUrlDecode(false); configurer.setUrlPathHelper(urlPathHelper); + configurer.setUseTrailingSlashMatch(true); } }