/*
 * Created on 2004-10-22
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
package com.ibatis.jpetstore.service;

import java.util.List;

import com.ibatis.common.util.PaginatedList;
import com.ibatis.jpetstore.domain.Category;
import com.ibatis.jpetstore.domain.Item;
import com.ibatis.jpetstore.domain.Product;

/**
 * @author peter.cheng TODO To change the template for this generated type
 *         comment go to Window - Preferences - Java - Code Style - Code
 *         Templates
 */
public interface CatalogService {
    /* CATEGORY */

    public List getCategoryList();

    public Category getCategory(String categoryId);

    /* PRODUCT */

    public Product getProduct(String productId);

    public PaginatedList getProductListByCategory(String categoryId);

    public PaginatedList searchProductList(String keywords);

    /* ITEM */

    public PaginatedList getItemListByProduct(String productId);

    public Item getItem(String itemId);

    public boolean isItemInStock(String itemId);

}