|
68 | 68 | filter_extension.conformance_classes.append( |
69 | 69 | FilterConformanceClasses.ADVANCED_COMPARISON_OPERATORS |
70 | 70 | ) |
| 71 | +filter_extension.conformance_classes = [ |
| 72 | + cls |
| 73 | + for cls in filter_extension.conformance_classes |
| 74 | + if cls.value != "https://api.stacspec.org/v1.0.0-rc.2/item-search#filter" |
| 75 | +] |
71 | 76 |
|
72 | 77 | # Adding collection search extension for compatibility with stac-auth-proxy |
73 | 78 | # (https://github.com/developmentseed/stac-auth-proxy) |
74 | 79 | # The extension is not fully implemented yet but is required for collection filtering support |
75 | 80 | collection_search_extension = CollectionSearchExtension() |
76 | | -collection_search_extension.conformance_classes.append( |
77 | | - "https://api.stacspec.org/v1.0.0-rc.1/collection-search#filter" |
78 | | -) |
| 81 | +collection_search_extension.conformance_classes = [ |
| 82 | + cls |
| 83 | + for cls in collection_search_extension.conformance_classes |
| 84 | + if cls |
| 85 | + not in [ |
| 86 | + "https://api.stacspec.org/v1.0.0-rc.1/collection-search", |
| 87 | + "http://www.opengis.net/spec/ogcapi-common-2/1.0/conf/simple-query", |
| 88 | + ] |
| 89 | +] |
79 | 90 |
|
80 | 91 | aggregation_extension = AggregationExtension( |
81 | 92 | client=EsAsyncBaseAggregationClient( |
82 | 93 | database=database_logic, session=session, settings=settings |
83 | 94 | ) |
84 | 95 | ) |
| 96 | + |
| 97 | +# Remove the v0.3.0 aggregation link |
| 98 | +aggregation_extension.conformance_classes = [ |
| 99 | + cls |
| 100 | + for cls in aggregation_extension.conformance_classes |
| 101 | + if cls != "https://api.stacspec.org/v0.3.0/aggregation" |
| 102 | +] |
| 103 | + |
85 | 104 | aggregation_extension.POST = EsAggregationExtensionPostRequest |
86 | 105 | aggregation_extension.GET = EsAggregationExtensionGetRequest |
87 | 106 |
|
88 | 107 | fields_extension = FieldsExtension() |
89 | 108 | fields_extension.conformance_classes.append(FieldsConformanceClasses.ITEMS) |
90 | 109 |
|
| 110 | +fields_extension.conformance_classes = [ |
| 111 | + cls |
| 112 | + for cls in fields_extension.conformance_classes |
| 113 | + if cls.value != "http://www.opengis.net/spec/ogcapi-common-2/1.0/conf/simple-query" |
| 114 | +] |
| 115 | + |
91 | 116 | search_extensions = [ |
92 | 117 | fields_extension, |
93 | 118 | QueryExtension(), |
|
120 | 145 | ), |
121 | 146 | ) |
122 | 147 |
|
| 148 | +for extension in search_extensions: |
| 149 | + extension.conformance_classes = [ |
| 150 | + cls |
| 151 | + for cls in extension.conformance_classes |
| 152 | + if cls != "https://api.stacspec.org/v1.0.0/collections/extensions/transaction" |
| 153 | + and cls |
| 154 | + != "https://api.stacspec.org/v1.0.0/ogcapi-features/extensions/transaction" |
| 155 | + ] |
123 | 156 | extensions = [aggregation_extension] + search_extensions |
124 | 157 |
|
125 | 158 | database_logic.extensions = [type(ext).__name__ for ext in extensions] |
|
0 commit comments