1 package info.magnolia.module.admininterface.pages; 2 3 import java.util.Collection ; 4 import java.util.Iterator ; 5 6 import javax.servlet.http.HttpServletRequest ; 7 import javax.servlet.http.HttpServletResponse ; 8 9 import org.apache.commons.lang.StringUtils; 10 11 import info.magnolia.cms.beans.config.ContentRepository; 12 import info.magnolia.cms.core.Content; 13 import info.magnolia.cms.core.ItemType; 14 import info.magnolia.cms.core.search.Query; 15 import info.magnolia.cms.util.ContentUtil; 16 import info.magnolia.cms.util.DumperUtil; 17 import info.magnolia.cms.util.QueryUtil; 18 import info.magnolia.context.MgnlContext; 19 import info.magnolia.module.admininterface.TemplatedMVCHandler; 20 21 22 public class JCRUtilsPage extends TemplatedMVCHandler { 23 public JCRUtilsPage(String name, HttpServletRequest request, HttpServletResponse response) { 24 super(name, request, response); 25 } 26 27 private String repository = ""; 28 29 private int level = 1; 30 31 private String path = "/"; 32 33 private String result = ""; 34 35 private String statement = ""; 36 37 private String language = Query.SQL; 38 39 private String itemType = "nt:base"; 40 41 public String dump(){ 42 if(StringUtils.isNotEmpty(repository) && StringUtils.isNotEmpty(path)){ 43 Content node = ContentUtil.getContent(repository, path); 44 if(node == null){ 45 return "path not found: " + this.path; 46 } 47 result = DumperUtil.dump(node, level); 48 } 49 return VIEW_SHOW; 50 } 51 52 public String query(){ 53 long start = System.currentTimeMillis(); 54 Collection nodes = QueryUtil.query(repository, statement, language, this.itemType); 55 this.result +=(System.currentTimeMillis() - start) + "ms\n"; 56 57 for (Iterator iter = nodes.iterator(); iter.hasNext();) { 58 Content node = (Content) iter.next(); 59 this.result += node.getHandle() + "\n"; 60 } 61 return VIEW_SHOW; 62 } 63 64 public String delete(){ 65 try { 66 MgnlContext.getHierarchyManager(repository).delete(path); 67 } 68 catch (Exception e) { 69 result = e.toString(); 70 } 71 return VIEW_SHOW; 72 } 73 74 public Iterator getRepositories() { 75 return ContentRepository.getAllRepositoryNames(); 76 } 77 78 public int getLevel() { 79 return level; 80 } 81 82 83 public void setLevel(int level) { 84 this.level = level; 85 } 86 87 88 public String getPath() { 89 return path; 90 } 91 92 93 public void setPath(String path) { 94 this.path = path; 95 } 96 97 98 public String getRepository() { 99 return repository; 100 } 101 102 103 public void setRepository(String repositroy) { 104 this.repository = repositroy; 105 } 106 107 108 public String getResult() { 109 return result; 110 } 111 112 113 public String getStatement() { 114 return statement; 115 } 116 117 118 public void setStatement(String statement) { 119 this.statement = statement; 120 } 121 122 123 public String getLanguage() { 124 return language; 125 } 126 127 128 public void setLanguage(String language) { 129 this.language = language; 130 } 131 132 133 public String getItemType() { 134 return itemType; 135 } 136 137 138 public void setItemType(String itemType) { 139 this.itemType = itemType; 140 } 141 142 } 143 | Popular Tags |