Package org.drools.guvnor.server.jaxrs.providers.atom

Examples of org.drools.guvnor.server.jaxrs.providers.atom.Feed


    @GET
    @Path("{categoryPath:.+}/assets")
    @Produces(MediaType.APPLICATION_ATOM_XML)
    public Feed getAssetsAsAtom(@PathParam("categoryPath") String categoryPath) {
        Feed f = new Feed();
        f.setTitle(categoryPath);
        AssetItemPageResult result = rulesRepository.findAssetsByCategory(
                categoryPath, 0, pageSize);
        List<AssetItem> assets = result.assets;
        for (AssetItem item : assets) {
            Entry e = toAssetEntryAbdera(item, uriInfo);
            f.getEntries().add(e);
        }

        if (result.hasNext) {
            Link l = new Link();
            l.setRel("next-page");
            l.setHref(uriInfo.getBaseUriBuilder()
                    .path("categories/{categoryPath}/assets//page/{pageNumber}")
                    .build(categoryPath, (Integer) 1));
            f.getLinks().add(l);
        }

        return f;
    }
View Full Code Here


    }

    @GET
    @Produces(MediaType.APPLICATION_ATOM_XML)
    public Feed getPackagesAsFeed() {
        Feed f = new Feed();
        f.setTitle("Packages");
        f.setBase(uriInfo.getBaseUriBuilder().path("packages").build());
        ModuleIterator iter = rulesRepository.listModules();
        while (iter.hasNext()) {
            ModuleItem item = iter.next();
            Entry e = new Entry();
            e.setTitle(item.getName());
            Link l = new Link();
            l.setHref(uriInfo.getBaseUriBuilder()
                    .path("packages/{itemName}")
                    .build(item.getName()));
            e.getLinks().add(l);
            f.getEntries().add(e);
        }

        return f;
    }
View Full Code Here

            throw new WebApplicationException(Response.status(Response.Status.NOT_FOUND)
                    .entity("Package [" + packageName + "] does not exist").build());
        }
        ModuleItem p = rulesRepository.loadModule(packageName);

        Feed f = new Feed();
        f.setTitle("Version history of " + p.getName());
        f.setBase(uriInfo.getBaseUriBuilder().path("packages").build());
        ModuleHistoryIterator it = p.getHistory();

        while (it.hasNext()) {
            try {
                ModuleItem historicalPackage = it.next();
                if (historicalPackage.getVersionNumber() != 0) {
                    Entry e = new Entry();
                    e.setTitle(Long.toString(historicalPackage
                            .getVersionNumber()));
                    e.setUpdated(historicalPackage.getLastModified().getTime());
                    Link l = new Link();
                    l.setHref(uriInfo
                            .getBaseUriBuilder()
                            .path("packages/{packageName}/versions/{versionNumber}")
                            .build(p.getName(), Long.toString(historicalPackage.getVersionNumber())));
                    e.getLinks().add(l);
                    f.getEntries().add(e);
                }
            } catch (RuntimeException e) {
                throw new WebApplicationException(e);
            }
        }
View Full Code Here

    @Produces(MediaType.APPLICATION_ATOM_XML)
    public Feed getAssetsAsAtom(
            @PathParam("packageName") String packageName,
            @QueryParam("format") List<String> formats) {
        try {
            Feed feed = new Feed();
            ModuleItem p = rulesRepository.loadModule(packageName);
            feed.setTitle(p.getTitle() + "-asset-feed");
           
            Iterator<AssetItem> iter = null;
           
            if (formats.isEmpty()){
                //no format specified? Return all assets
                iter = p.getAssets();
            }else{
                //if the format is specified, return only the assets of
                //the specified formats.
                iter = p.listAssetsByFormat(formats);
            }
           
            while (iter.hasNext())
                feed.getEntries().add(toAssetEntryAbdera(iter.next(), uriInfo));
            return feed;
        } catch (RuntimeException e) {
            throw new WebApplicationException(e);
        }
    }
View Full Code Here

                                       @PathParam("assetName") String assetName) {
        try {
            //Throws RulesRepositoryException if the package or asset does not exist
            AssetItem asset = rulesRepository.loadModule(packageName).loadAsset(assetName);
           
            Feed f = new Feed();
            f.setTitle("Version history of " + asset.getName());

            URI base;
            if (asset.isHistoricalVersion()) {
                base = uriInfo.getBaseUriBuilder()
                        .path("packages/{packageName}/assets/{assetName}/versions/{versionNumber}")
                        .build(asset.getModuleName(), asset.getName(), Long.toString(asset.getVersionNumber()));
            } else {
                base = uriInfo.getBaseUriBuilder()
                        .path("packages/{packageName}/assets/{assetName}/versions")
                        .build(asset.getModuleName(), asset.getName());
            }
            f.setBase(base);
                       
            AssetHistoryIterator it = asset.getHistory();
            while (it.hasNext()) {
                AssetItem historicalAsset = it.next();
                if (historicalAsset.getVersionNumber() != 0) {
                    Entry e = new Entry();
                    e.setTitle(Long.toString(historicalAsset
                            .getVersionNumber()));
                    e.setUpdated(historicalAsset.getLastModified().getTime());
                    Link l = new Link();
                    l.setHref(uriInfo
                            .getBaseUriBuilder()
                            .path("packages/{packageName}/assets/{assetName}/versions/{versionNumber}")
                            .build(asset.getModuleName(), asset.getName(),
                                    Long.toString(historicalAsset.getVersionNumber())));
                    e.getLinks().add(l);
                    f.getEntries().add(e);
                }
            }
            return f;
        } catch (RuntimeException e) {
            throw new WebApplicationException(e);
View Full Code Here

    }

    @GET
    @Produces(MediaType.APPLICATION_ATOM_XML)
    public Feed getPackagesAsFeed() {
        Feed f = new Feed();
        f.setTitle("Packages");
        f.setBase(uriInfo.getBaseUriBuilder().path("packages").build());
        ModuleIterator iter = rulesRepository.listModules();
        while (iter.hasNext()) {
            ModuleItem item = iter.next();
            Entry e = new Entry();
            e.setTitle(item.getName());
            Link l = new Link();
            l.setHref(uriInfo.getBaseUriBuilder()
                    .path("packages/{itemName}")
                    .build(item.getName()));
            e.getLinks().add(l);
            f.getEntries().add(e);
        }

        return f;
    }
View Full Code Here

            throw new WebApplicationException(Response.status(Response.Status.NOT_FOUND)
                    .entity("Package [" + packageName + "] does not exist").build());
        }
        ModuleItem p = rulesRepository.loadModule(packageName);

        Feed f = new Feed();
        f.setTitle("Version history of " + p.getName());
        f.setBase(uriInfo.getBaseUriBuilder().path("packages").build());
        ModuleHistoryIterator it = p.getHistory();

        while (it.hasNext()) {
            try {
                ModuleItem historicalPackage = it.next();
                if (historicalPackage.getVersionNumber() != 0) {
                    Entry e = new Entry();
                    e.setTitle(Long.toString(historicalPackage
                            .getVersionNumber()));
                    e.setUpdated(historicalPackage.getLastModified().getTime());
                    Link l = new Link();
                    l.setHref(uriInfo
                            .getBaseUriBuilder()
                            .path("packages/{packageName}/versions/{versionNumber}")
                            .build(p.getName(), Long.toString(historicalPackage.getVersionNumber())));
                    e.getLinks().add(l);
                    f.getEntries().add(e);
                }
            } catch (RuntimeException e) {
                throw new WebApplicationException(e);
            }
        }
View Full Code Here

    @Produces(MediaType.APPLICATION_ATOM_XML)
    public Feed getAssetsAsAtom(
            @PathParam("packageName") String packageName,
            @QueryParam("format") List<String> formats) {
        try {
            Feed feed = new Feed();
            ModuleItem p = rulesRepository.loadModule(packageName);
            feed.setTitle(p.getTitle() + "-asset-feed");
           
            Iterator<AssetItem> iter = null;
           
            if (formats.isEmpty()){
                //no format specified? Return all assets
                iter = p.getAssets();
            }else{
                //if the format is specified, return only the assets of
                //the specified formats.
                iter = p.listAssetsByFormat(formats);
            }
           
            while (iter.hasNext())
                feed.getEntries().add(toAssetEntryAbdera(iter.next(), uriInfo));
            return feed;
        } catch (RuntimeException e) {
            throw new WebApplicationException(e);
        }
    }
View Full Code Here

                                       @PathParam("assetName") String assetName) {
        try {
            //Throws RulesRepositoryException if the package or asset does not exist
            AssetItem asset = rulesRepository.loadModule(packageName).loadAsset(assetName);
           
            Feed f = new Feed();
            f.setTitle("Version history of " + asset.getName());

            URI base;
            if (asset.isHistoricalVersion()) {
                base = uriInfo.getBaseUriBuilder()
                        .path("packages/{packageName}/assets/{assetName}/versions/{versionNumber}")
                        .build(asset.getModuleName(), asset.getName(), Long.toString(asset.getVersionNumber()));
            } else {
                base = uriInfo.getBaseUriBuilder()
                        .path("packages/{packageName}/assets/{assetName}/versions")
                        .build(asset.getModuleName(), asset.getName());
            }
            f.setBase(base);
                       
            AssetHistoryIterator it = asset.getHistory();
            while (it.hasNext()) {
                AssetItem historicalAsset = it.next();
                if (historicalAsset.getVersionNumber() != 0) {
                    Entry e = new Entry();
                    e.setTitle(Long.toString(historicalAsset
                            .getVersionNumber()));
                    e.setUpdated(historicalAsset.getLastModified().getTime());
                    Link l = new Link();
                    l.setHref(uriInfo
                            .getBaseUriBuilder()
                            .path("packages/{packageName}/assets/{assetName}/versions/{versionNumber}")
                            .build(asset.getModuleName(), asset.getName(),
                                    Long.toString(historicalAsset.getVersionNumber())));
                    e.getLinks().add(l);
                    f.getEntries().add(e);
                }
            }
            return f;
        } catch (RuntimeException e) {
            throw new WebApplicationException(e);
View Full Code Here

TOP

Related Classes of org.drools.guvnor.server.jaxrs.providers.atom.Feed

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.