public DescribeStoredQueriesResponseType run(DescribeStoredQueriesType request) throws WFSException { Wfs20Factory factory = Wfs20Factory.eINSTANCE; DescribeStoredQueriesResponseType response = factory.createDescribeStoredQueriesResponseType(); List<StoredQueryProvider> providers = GeoServerExtensions.extensions(StoredQueryProvider.class); if (request.getStoredQueryId().isEmpty()) { for (StoredQuery query : storedQueryProvider.listStoredQueries()) { describeStoredQuery(query, response); } } else { for (URI id : request.getStoredQueryId()) { StoredQuery query = storedQueryProvider.getStoredQuery(id.toString()); if (query == null) { WFSException exception = new WFSException( request, "No such stored query: " + id, ServiceException.INVALID_PARAMETER_VALUE); exception.setLocator("STOREDQUERY_ID"); throw exception; } describeStoredQuery(query, response); } } return response; }