src/org/objectweb/cjdbc/controller/backend/BackendRecoveryPolicy.java

説明を見る。
00001 00025 package org.objectweb.cjdbc.controller.backend; 00026 00027 import java.io.Serializable; 00028 import java.util.ArrayList; 00029 00030 import org.objectweb.cjdbc.common.exceptions.ControllerException; 00031 import org.objectweb.cjdbc.common.xml.DatabasesXmlTags; 00032 00040 public class BackendRecoveryPolicy implements Serializable 00041 { 00042 private String backendName; 00043 private boolean recoveryPolicy; 00044 private ArrayList controllers; 00045 00052 public BackendRecoveryPolicy(String backendName, boolean recoveryPolicy) 00053 { 00054 this.backendName = backendName; 00055 this.recoveryPolicy = recoveryPolicy; 00056 } 00057 00063 public String getBackendName() 00064 { 00065 return backendName; 00066 } 00067 00073 public boolean getRecoveryPolicy() 00074 { 00075 return recoveryPolicy; 00076 } 00077 00085 public void addController(String controllerName) throws ControllerException 00086 { 00087 if (recoveryPolicy == false) 00088 throw new ControllerException( 00089 "Cannot define controllers when recovery policy is off."); 00090 if (controllers == null) 00091 controllers = new ArrayList(); 00092 controllers.add(controllerName); 00093 } 00094 00102 public boolean isEligibleForRecovery(String controllerName) 00103 { 00104 if (recoveryPolicy == false) 00105 return false; 00106 if (controllers == null) 00107 return true; 00108 else 00109 return controllers.contains(controllerName); 00110 } 00111 00117 public String getXml() 00118 { 00119 String xml = "<" + DatabasesXmlTags.ELT_BackendRecoveryPolicy + " " 00120 + DatabasesXmlTags.ATT_backendName + "=\"" + backendName + "\" " 00121 + DatabasesXmlTags.ATT_recoveryPolicy + "=\"" 00122 + (recoveryPolicy ? DatabasesXmlTags.VAL_on : DatabasesXmlTags.VAL_off); 00123 if (controllers != null) 00124 { 00125 xml += ">"; 00126 int size = controllers.size(); 00127 for (int i = 0; i < size; i++) 00128 xml += "<" + DatabasesXmlTags.ELT_ControllerName + " " 00129 + DatabasesXmlTags.ATT_name + "=\"" + backendName + "\"/>"; 00130 xml += "</" + DatabasesXmlTags.ELT_BackendRecoveryPolicy + ">"; 00131 } 00132 else 00133 xml += "\"/>"; 00134 return xml; 00135 } 00136 00137 }

CJDBCversion1.0.4に対してTue Oct 12 15:16:00 2004に生成されました。 doxygen 1.3.8