Subversion Repositories SmartDukaan

Rev

Rev 3116 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package in.shop2020.server;

import in.shop2020.model.ItemActivity;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.jdo.Extent;
import javax.jdo.PersistenceManager;
import javax.jdo.Query;

public class ItemActivityRepository {

        public List<ItemActivity> getAll() {
                PersistenceManager pm = PMF.get().getPersistenceManager();
                try {
                        List<ItemActivity> itemActivities = new ArrayList<ItemActivity>();
                    Extent<ItemActivity> extent = pm.getExtent(ItemActivity.class, false);
                    for (ItemActivity itemActivity : extent) {
                        itemActivities.add(itemActivity);
                    }
                    extent.closeAll();
                        
                    return itemActivities;
                } finally {
                        pm.close();
                }
        }

        public void create(ItemActivity itemActivity) {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
            String key = sdf.format(itemActivity.getDate()) + "-" + itemActivity.getCatalogId();
            itemActivity.setKey(key);
                PersistenceManager pm = PMF.get().getPersistenceManager();
                try {
                    pm.makePersistent(itemActivity);
                } finally {
                        pm.close();
                }
        }

        public void createAll(List<ItemActivity> itemActivities) {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
        for (ItemActivity itemActivity : itemActivities) {
                String key = sdf.format(itemActivity.getDate()) + "-" + itemActivity.getCatalogId();
                itemActivity.setKey(key);
            }
        PersistenceManager pm = PMF.get().getPersistenceManager();
        try {
            pm.makePersistentAll(itemActivities);
        } finally {
            pm.close();
        }
    }
        
        public void deleteById(String key) {
                PersistenceManager pm = PMF.get().getPersistenceManager();
                try {
                        pm.deletePersistent(pm.getObjectById(ItemActivity.class, key));
                } finally {
                        pm.close();
                }
        }
        
        public ItemActivity getById(String key) {
        PersistenceManager pm = PMF.get().getPersistenceManager();
        try {
            return pm.getObjectById(ItemActivity.class, key);
        } finally {
            pm.close();
        }
    }
        
        public List<ItemActivity> getByDate(Date date) {
            PersistenceManager pm = PMF.get().getPersistenceManager();
        Query query = pm.newQuery(ItemActivity.class);
        query.setFilter("date == dateParam");
        query.declareImports("import java.util.Date");
        query.declareParameters("Date dateParam");

        try {
            return (List<ItemActivity>) query.execute(date);
        } finally {
            query.closeAll();
        }
    }
}