@@ -50,6 +50,11 @@ public class ODataV4Endpoint implements Endpoint {
5050 */
5151 public static final String CONFIG_URI_CONVERSION = "uriConversion" ;
5252
53+ /**
54+ * The NeonBee CDS service annotation to include or exclude services from being exposed via the OData V4 endpoint.
55+ */
56+ public static final String NEONBEE_ENDPOINT_CDS_SERVICE_ANNOTATION = "neonbee.endpoint" ;
57+
5358 private static final String BASE_PATH_SEGMENT = "odata" ;
5459
5560 /**
@@ -61,8 +66,6 @@ public class ODataV4Endpoint implements Endpoint {
6166
6267 private static final String NORMALIZED_URI_CONTEXT_KEY = ODataV4Endpoint .class .getName () + "_normalizedUri" ;
6368
64- public static final String NEONBEE_ENDPOINT_CDS_SERVICE_ANNOTATION = "neonbee.endpoint" ;
65-
6669 /**
6770 * Either STRICT (<namespace>.<service>), LOOSE (<path mapping of namespace>-<path mapping of
6871 * service>) or CDS (<path mapping of service>) URI mapping:
@@ -235,6 +238,17 @@ public Future<Router> createEndpointRouter(Vertx vertx, String basePath, JsonObj
235238 return succeededFuture (router );
236239 }
237240
241+ /**
242+ * Refreshes the given router with the current models.
243+ *
244+ * @param vertx The Vert.x instance.
245+ * @param router The router to refresh.
246+ * @param basePath The base path of the endpoint.
247+ * @param uriConversion The URI conversion to use.
248+ * @param exposedEntities The block / allow list of entities to be exposed.
249+ * @param currentModels The current models reference.
250+ * @return A future indicating when the refresh is complete.
251+ */
238252 protected Future <Void > refreshRouter (Vertx vertx , Router router , String basePath , UriConversion uriConversion ,
239253 RegexBlockList exposedEntities , AtomicReference <Map <String , EntityModel >> currentModels ) {
240254 return NeonBee .get (vertx ).getModelManager ().getSharedModels ().compose (models -> {
0 commit comments