1 package org.enhydra.shark.corbaclient.workflowadmin.cache; 2 3 import javax.swing.*; 4 5 import org.enhydra.shark.corba.WorkflowService.CacheAdministration; 6 import java.awt.Component ; 7 import java.awt.Dimension ; 8 import javax.swing.border.Border ; 9 import org.enhydra.shark.corbaclient.ActionPanel; 10 import org.enhydra.shark.corbaclient.ResourceManager; 11 import org.enhydra.shark.corbaclient.workflowadmin.SharkAdmin; 12 import org.enhydra.shark.corbaclient.workflowadmin.cache.actions.ClearProcessCache; 13 import org.enhydra.shark.corbaclient.workflowadmin.cache.actions.ClearResourceCache; 14 import org.enhydra.shark.corbaclient.workflowadmin.cache.actions.SetProcessCacheSize; 15 import org.enhydra.shark.corbaclient.workflowadmin.cache.actions.SetResourceCacheSize; 16 17 23 public class CacheManagement extends ActionPanel { 24 private static Dimension textFieldDimension=new Dimension (300,20); 25 26 private SharkAdmin workflowAdmin; 27 28 private JTextField procCacheSize=new JTextField(); 29 private JTextField procCacheItems=new JTextField(); 30 private JTextField resCacheSize=new JTextField(); 31 private JTextField resCacheItems=new JTextField(); 32 33 34 public CacheManagement (SharkAdmin wa) { 35 super(); 36 this.workflowAdmin=wa; 37 super.init(); 38 } 39 40 protected void createActions () { 41 defaultActions=new Action[] { 42 new SetProcessCacheSize(this), 43 new ClearProcessCache(this), 44 new SetResourceCacheSize(this), 45 new ClearResourceCache(this) 46 }; 47 } 48 49 protected Component createCenterComponent() { 50 procCacheSize.setEditable(false); 51 procCacheItems.setEditable(false); 52 resCacheSize.setEditable(false); 53 resCacheItems.setEditable(false); 54 55 JPanel pp=new JPanel(); 56 Border emptyb=BorderFactory.createEmptyBorder(10,10,10,10); 57 Border inb=BorderFactory.createEmptyBorder(1,1,1,1); 58 inb=BorderFactory.createTitledBorder(inb, 59 ResourceManager.getLanguageDependentString("ProcessCacheKey")); 60 pp.setBorder(BorderFactory.createCompoundBorder(emptyb,inb)); 61 pp.setLayout(new BoxLayout(pp,BoxLayout.Y_AXIS)); 62 63 JPanel pp1=new JPanel(); 64 pp1.setLayout(new BoxLayout(pp1,BoxLayout.X_AXIS)); 65 pp1.add(Box.createHorizontalGlue()); 66 pp1.add(new JLabel(ResourceManager.getLanguageDependentString("ProcessCacheSizeKey")+": ")); 67 procCacheSize.setMinimumSize(new Dimension (textFieldDimension)); 68 procCacheSize.setMaximumSize(new Dimension (textFieldDimension)); 69 procCacheSize.setPreferredSize(new Dimension (textFieldDimension)); 70 pp1.add(procCacheSize); 71 pp.add(pp1); 72 73 pp1=new JPanel(); 74 pp1.setLayout(new BoxLayout(pp1,BoxLayout.X_AXIS)); 75 pp1.add(Box.createHorizontalGlue()); 76 pp1.add(new JLabel(ResourceManager.getLanguageDependentString("NoOfProcessesInCacheKey")+": ")); 77 procCacheItems.setMinimumSize(new Dimension (textFieldDimension)); 78 procCacheItems.setMaximumSize(new Dimension (textFieldDimension)); 79 procCacheItems.setPreferredSize(new Dimension (textFieldDimension)); 80 pp1.add(procCacheItems); 81 pp.add(pp1); 82 83 84 JPanel rp=new JPanel(); 85 inb=BorderFactory.createEmptyBorder(1,1,1,1); 86 inb=BorderFactory.createTitledBorder(inb, 87 ResourceManager.getLanguageDependentString("ResourceCacheKey")); 88 rp.setBorder(BorderFactory.createCompoundBorder(emptyb,inb)); 89 rp.setLayout(new BoxLayout(rp,BoxLayout.Y_AXIS)); 90 91 JPanel rp1=new JPanel(); 92 rp1.setLayout(new BoxLayout(rp1,BoxLayout.X_AXIS)); 93 rp1.add(Box.createHorizontalGlue()); 94 rp1.add(new JLabel(ResourceManager.getLanguageDependentString("ResourceCacheSizeKey")+": ")); 95 resCacheSize.setMinimumSize(new Dimension (textFieldDimension)); 96 resCacheSize.setMaximumSize(new Dimension (textFieldDimension)); 97 resCacheSize.setPreferredSize(new Dimension (textFieldDimension)); 98 rp1.add(resCacheSize); 99 rp.add(rp1); 100 101 rp1=new JPanel(); 102 rp1.setLayout(new BoxLayout(rp1,BoxLayout.X_AXIS)); 103 rp1.add(Box.createHorizontalGlue()); 104 rp1.add(new JLabel(ResourceManager.getLanguageDependentString("NoOfResourcesInCacheKey")+": ")); 105 resCacheItems.setMinimumSize(new Dimension (textFieldDimension)); 106 resCacheItems.setMaximumSize(new Dimension (textFieldDimension)); 107 resCacheItems.setPreferredSize(new Dimension (textFieldDimension)); 108 rp1.add(resCacheItems); 109 rp.add(rp1); 110 111 JPanel mp=new JPanel(); 112 mp.setBorder(BorderFactory.createEtchedBorder()); 113 mp.setLayout(new BoxLayout(mp,BoxLayout.Y_AXIS)); 114 115 mp.add(pp); 116 mp.add(rp); 117 118 return mp; 119 } 120 121 public SharkAdmin getWorkflowAdmin () { 122 return workflowAdmin; 123 } 124 125 public void clear () { 126 } 127 128 public synchronized void refresh (boolean mandatoryRefreshing) { 129 try { 131 CacheAdministration ca=SharkAdmin.getCacheAdmin(); 132 procCacheSize.setText(String.valueOf(ca.getProcessCacheSize())); 133 procCacheItems.setText(String.valueOf(ca.howManyCachedProcesses())); 134 resCacheSize.setText(String.valueOf(ca.getResourceCacheSize())); 135 resCacheItems.setText(String.valueOf(ca.howManyCachedResources())); 136 } catch (Exception ex) { 137 procCacheSize.setText("???"); 138 procCacheItems.setText("???"); 139 resCacheSize.setText("???"); 140 resCacheItems.setText("???"); 141 } 142 } 143 145 } 146 | Popular Tags |