| 1 package com.dotmarketing.portlets.containers.factories; 2 3 import com.dotmarketing.beans.Host; 4 import com.dotmarketing.beans.Identifier; 5 import com.dotmarketing.beans.Inode; 6 import com.dotmarketing.db.DotHibernate; 7 import com.dotmarketing.factories.IdentifierFactory; 8 import com.dotmarketing.factories.InodeFactory; 9 import com.dotmarketing.factories.PermissionFactory; 10 import com.dotmarketing.portlets.containers.model.Container; 11 import com.dotmarketing.portlets.structure.model.Structure; 12 import com.dotmarketing.services.ContainerServices; 13 17 public class ContainerFactory { 18 19 public static java.util.List getChildrenContainerByOrder(Inode i) { 20 21 return InodeFactory.getChildrenClassByOrder(i, Container.class, "sort_order"); 22 23 } 24 25 public static java.util.List getActiveContainers() { 26 DotHibernate dh = new DotHibernate(Container.class); 27 dh.setQuery( 28 "from inode in class com.dotmarketing.portlets.containers.model.Container"); 29 30 return dh.list(); 31 } 32 33 public static java.util.List getContainersByOrderAndParent(String orderby,Inode o) { 34 35 36 return InodeFactory.getChildrenClassByOrder(o, Container.class, orderby); 37 38 } 39 40 public static java.util.List getContainersByOrder(String orderby) { 41 DotHibernate dh = new DotHibernate(Container.class); 42 dh.setQuery( 43 "from inode in class com.dotmarketing.portlets.containers.model.Container where working = " + com.dotmarketing.db.DbConnectionFactory.getDBTrue() + " or live = " + com.dotmarketing.db.DbConnectionFactory.getDBTrue() + " order by " + orderby); 44 45 return dh.list(); 46 } 47 48 public static java.util.List getContainerChildrenByCondition(Inode o,String condition) { 49 50 return InodeFactory.getChildrenClassByConditionAndOrderBy(o, Container.class, condition, "title, sort_order"); 51 52 53 } 54 55 public static java.util.List getContainerByCondition(String condition) { 56 DotHibernate dh = new DotHibernate(Container.class); 57 dh.setQuery("from inode in class com.dotmarketing.portlets.containers.model.Container where " + condition + " order by title, sort_order"); 58 return dh.list(); 59 } 60 61 public static java.util.List getContainerChildren(Inode o) { 62 63 return InodeFactory.getChildrenClassByOrder(o, Container.class, "inode, sort_order"); 64 65 } 66 67 public static Container getContainerByLiveAndFolderAndTitle(Inode parent , String title) { 68 69 70 71 return (Container) InodeFactory.getChildOfClassbyCondition(parent, Container.class, "title = '"+ title +"' and live = " + com.dotmarketing.db.DbConnectionFactory.getDBTrue()); 72 73 74 } 75 76 public static boolean existsContainer(String friendlyName) { 77 DotHibernate dh = new DotHibernate(Container.class); 78 dh.setQuery("from inode in class com.dotmarketing.portlets.containers.model.Container where friendly_name = ?"); 79 dh.setParam(friendlyName); 80 return (((java.util.List ) dh.list()).size()>0); 81 } 82 83 public static Container getContainerByFriendlyName(String friendlyName) { 84 DotHibernate dh = new DotHibernate(Container.class); 85 dh.setQuery("from inode in class com.dotmarketing.portlets.containers.model.Container where friendly_name = ? and live=" + com.dotmarketing.db.DbConnectionFactory.getDBTrue()); 86 dh.setParam(friendlyName); 87 return (Container) dh.load(); 88 } 89 90 public static Container copyContainer (Container currentContainer) { 91 92 Container newContainer = new Container(); 94 95 newContainer.copy(currentContainer); 96 newContainer.setLocked(false); 97 newContainer.setLive(false); 98 newContainer.setFriendlyName(currentContainer.getFriendlyName() 99 + " (COPY) "); 100 newContainer.setTitle(currentContainer.getTitle() + " (COPY) "); 101 102 InodeFactory.saveInode(newContainer); 104 105 106 Host h = (Host) InodeFactory.getParentOfClass(currentContainer, Host.class); 108 h.addChild(newContainer); 109 110 Structure st = (Structure) InodeFactory.getParentOfClass(currentContainer, Structure.class); 112 st.addChild(newContainer); 113 114 Identifier newIdentifier = IdentifierFactory.createNewIdentifier(newContainer); 116 newIdentifier.setHostInode(h.getInode()); 117 118 PermissionFactory.copyPermissions(currentContainer, newContainer); 120 121 ContainerServices.writeContainerToFile(newContainer, newIdentifier, 123 true); 124 125 return newContainer; 126 } 127 128 } 129 | Popular Tags |