@Override
    public List<ApiPlanSummaryBean> getApiVersionPlans(String organizationId, String apiId, String version)
         throws ApiVersionNotFoundException {
        securityContext.checkPermissionsOrDiscoverability(
                API,
                organizationId,
                apiId,
                version,
                Set.of(PermissionType.apiView)
        );
        if (securityContext.hasPermission(PermissionType.apiView, organizationId)) {
            return apiService.getApiVersionPlans(organizationId, apiId, version);
        } else {
            return apiService.getApiVersionPlans(organizationId, apiId, version).stream()
                           .filter(avp -> securityContext.getPermittedDiscoverabilities().contains(avp.getDiscoverability()))
                           .collect(Collectors.toList());
        }
    }
REST layer for Organization

TODO(msavy): split this into multiple interfaces & impls (ApiResource, ClientAppResource, etc).

@author eric.wittmann@redhat.com
@author marc@blackparrotlabs.io
manager/api/rest-impl/src/main/java/io/apiman/manager/api/rest/impl/OrganizationResourceImpl.java