Subversion Repositories SmartDukaan

Rev

Rev 3097 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
3094 vikas 1
 
2
package in.shop2020.server;
3
 
4
import in.shop2020.model.Item;
5
 
6
import java.util.ArrayList;
7
import java.util.Collection;
8
import java.util.List;
9
 
10
import javax.jdo.Extent;
11
import javax.jdo.JDOHelper;
12
import javax.jdo.PersistenceManager;
13
import javax.jdo.PersistenceManagerFactory;
14
 
15
public class ItemRepository {
16
 
17
	PersistenceManagerFactory pmfInstance = JDOHelper.getPersistenceManagerFactory("transactions-optional");
18
 
19
	public Collection<Item> getAll() {
20
		PersistenceManager pm = pmfInstance.getPersistenceManager();
21
		try {
22
			List<Item> items = new ArrayList<Item>();
23
		    Extent<Item> extent = pm.getExtent(Item.class, false);
24
		    for (Item item : extent) {
25
		        items.add(item);
26
		    }
27
		    extent.closeAll();
28
 
29
		    return items;
30
		} finally {
31
			pm.close();
32
		}
33
	}
34
 
35
	public void create(Item item) {
36
		PersistenceManager pm = pmfInstance.getPersistenceManager();
37
		try {
38
		    pm.makePersistent(item);
39
		} finally {
40
			pm.close();
41
		}
42
	}
43
 
44
	public void deleteById(Long id) {
45
		PersistenceManager pm = pmfInstance.getPersistenceManager();
46
		try {
47
			pm.deletePersistent(pm.getObjectById(Item.class, id));
48
		} finally {
49
			pm.close();
50
		}
51
	}
52
 
53
	public Item getById(Long id) {
54
        PersistenceManager pm = pmfInstance.getPersistenceManager();
55
        try {
56
            return pm.getObjectById(Item.class, id);
57
        } finally {
58
            pm.close();
59
        }
60
    }
61
}