public static CategoryDTO toDTO(Category category, UriInfo uriInfo) { CategoryDTO dto = new CategoryDTO(); dto.id = category.getId(); dto.name = category.getName(); Collection<ServiceLink> ls = new LinkedServiceBuilder() .add("GET", "GET", UriBuilderUtil.getCategory(uriInfo, dto.id)) .add("INSERT", "PUT", UriBuilderUtil.insertCategory(uriInfo)) .add("UPDATE", "POST", UriBuilderUtil.updateCategory(uriInfo, dto.id)) .add("DELETE", "DELETE", UriBuilderUtil.deleteCategory(uriInfo, dto.id)) .add( "INSERT-IN", "PUT", UriBuilderUtil.insertProductForCategory(uriInfo.getBaseUriBuilder(), dto.id)) .build(); dto.links = ls; return dto; }
public static CategoryProductsDTO toCategoryProductsDTO(Category category, UriInfo uriInfo) { CategoryProductsDTO dto = new CategoryProductsDTO(); dto.id = category.getId(); dto.name = category.getName(); Collection<ServiceLink> ls = new LinkedServiceBuilder() .add("GET", "GET", UriBuilderUtil.getCategory(uriInfo, dto.id)) .add("INSERT", "PUT", UriBuilderUtil.insertCategory(uriInfo)) .add("UPDATE", "POST", UriBuilderUtil.updateCategory(uriInfo, dto.id)) .add("DELETE", "DELETE", UriBuilderUtil.deleteCategory(uriInfo, dto.id)) .add( "INSERT-IN", "PUT", UriBuilderUtil.insertProductForCategory(uriInfo.getBaseUriBuilder(), dto.id)) .add("UP", "GET", uriInfo.getBaseUriBuilder().path("categories").build()) .build(); dto.links = ls; for (Product p : category.getProducts()) { dto.products.add(Converter.toDTO(p, dto.id, uriInfo)); } return dto; }
public static ProductDTO toDTO(Product product, long catId, UriInfo uriInfo) { ProductDTO dto = new ProductDTO(); dto.id = product.getId(); dto.name = product.getName(); dto.price = product.getPrice(); dto.stock = product.getStock(); dto.categoryId = catId; dto.description = product.getDescription(); Collection<ServiceLink> ls = new LinkedServiceBuilder() .add( "GET", "GET", UriBuilderUtil.getProductForCategory(uriInfo.getBaseUriBuilder(), catId, dto.id)) .add( "INSERT", "PUT", UriBuilderUtil.insertProductForCategory(uriInfo.getBaseUriBuilder(), catId)) .add( "UPDATE", "POST", UriBuilderUtil.updateProductForCategory(uriInfo.getBaseUriBuilder(), catId, dto.id)) .add( "DELETE", "DELETE", UriBuilderUtil.deleteProductForCategory(uriInfo.getBaseUriBuilder(), catId, dto.id)) .add("UP", "GET", UriBuilderUtil.getCategory(uriInfo, catId)) .build(); dto.links = ls; dto.properties = new ArrayList<PropertyDTO>(); for (Property prop : product.getProperties()) { dto.properties.add(Converter.toDTO(prop)); } return dto; }