當前位置: 首頁>>代碼示例>>Java>>正文


Java PropertyUtils類代碼示例

本文整理匯總了Java中org.apache.hivemind.util.PropertyUtils的典型用法代碼示例。如果您正苦於以下問題:Java PropertyUtils類的具體用法?Java PropertyUtils怎麽用?Java PropertyUtils使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


PropertyUtils類屬於org.apache.hivemind.util包,在下文中一共展示了PropertyUtils類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: preparePreferencesForXML

import org.apache.hivemind.util.PropertyUtils; //導入依賴的package包/類
/**
 * Ideally this should not be static but since we don't always have control over the superclass,
 * make it available for classes that might otherwise not be able to use it due to inheritance
 * constraints
 * @param provider
 * @param versionInt
 * @return
 */
public static String preparePreferencesForXML (PropertyNamesProvider provider, int versionInt) {
	String[] propertyNames = provider.getPreferencePropertyNames();
	Element rootElement = DocumentHelper.createElement("mesquite");
	Document preferencesDoc = DocumentHelper.createDocument(rootElement);
	preferencesDoc.setRootElement(rootElement);
	Element classElement = DocumentHelper.createElement(getShortClassName(provider.getClass()));
	rootElement.add(classElement);
	Element versionElement = DocumentHelper.createElement(VERSION);
	versionElement.setText("" + versionInt);
	classElement.add(versionElement);
	for (int i = 0; i < propertyNames.length; i++) {
		String currentPropertyName = propertyNames[i];
		try {
			Object prefsContent = PropertyUtils.read(provider, currentPropertyName);
			if (prefsContent != null) {
				Element nextPrefsElement = DocumentHelper.createElement(PREFERENCE);
				nextPrefsElement.addAttribute(KEY, currentPropertyName);
				nextPrefsElement.add(DocumentHelper.createCDATA(prefsContent.toString()));
				classElement.add(nextPrefsElement);
			}
		} catch (Exception e) {
			MesquiteMessage.warnProgrammer("Could not read property value " + currentPropertyName + " for writing xml preferences on module: " + provider);
		}
		//nextPrefsElement.addContent(new CDATA())
	}
	return XMLUtil.getDocumentAsXMLString(preferencesDoc);
}
 
開發者ID:MesquiteProject,項目名稱:MesquiteArchive,代碼行數:36,代碼來源:MesquiteXMLPreferencesModule.java

示例2: parseFullXMLDocument

import org.apache.hivemind.util.PropertyUtils; //導入依賴的package包/類
/**
 * Ideally this should not be static but since we don't always have control over the superclass,
 * make it available for classes that might otherwise not be able to use it due to inheritance
 * constraints
 * @param prefsXML
 * @param provider
 * @param version
 * @param versionsMustMatch
 * @return
 */
public static boolean parseFullXMLDocument(String prefsXML, PropertyNamesProvider provider, 
		int version, boolean versionsMustMatch) {
	Document doc = XMLUtil.getDocumentFromString(prefsXML);
	if (doc == null) {
		// not xml -- can't parse it
		return false;
	}
	Element rootElement = doc.getRootElement();
	String shortClassName = getShortClassName(provider.getClass());
	Element classElement = rootElement.element(shortClassName);
	if (classElement != null) {
		String versionString = classElement.elementText(VERSION);
		int versionInXml = MesquiteInteger.fromString(versionString);
		boolean acceptableVersion = (versionInXml == version || !versionsMustMatch);
		if (isCorrectRootTag(classElement.getName(), provider.getClass()) && acceptableVersion) {
			List prefsChildren = classElement.elements(PREFERENCE);
			for (Iterator iter = prefsChildren.iterator(); iter.hasNext();) {
				Element nextPreferenceElement = (Element) iter.next();
				String key = nextPreferenceElement.attributeValue(KEY);
				String value = nextPreferenceElement.getText();
				try {
					PropertyUtils.smartWrite(provider, key, value);
				} catch (Exception e) {
					MesquiteMessage.warnProgrammer("Could not write property value " + key + " for loading xml preferences on module: " + provider);
				}
			}
			return true;			
		}
	}
	return false;
}
 
開發者ID:MesquiteProject,項目名稱:MesquiteArchive,代碼行數:42,代碼來源:MesquiteXMLPreferencesModule.java

示例3: preparePreferencesForXML

import org.apache.hivemind.util.PropertyUtils; //導入依賴的package包/類
/**
 * Ideally this should not be static but since we don't always have control over the superclass,
 * make it available for classes that might otherwise not be able to use it due to inheritance
 * constraints
 * @param provider
 * @param versionInt
 * @return
 */
public static String preparePreferencesForXML (PropertyNamesProvider provider, int versionInt) {
	String[] propertyNames = provider.getPreferencePropertyNames();
	Document preferencesDoc = new Document();
	Element rootElement = new Element("mesquite");
	preferencesDoc.setRootElement(rootElement);
	Element classElement = new Element(getShortClassName(provider.getClass()));
	rootElement.addContent(classElement);
	Element versionElement = new Element(VERSION);
	versionElement.setText("" + versionInt);
	classElement.addContent(versionElement);
	for (int i = 0; i < propertyNames.length; i++) {
		String currentPropertyName = propertyNames[i];
		try {
			Object prefsContent = PropertyUtils.read(provider, currentPropertyName);
			if (prefsContent != null) {
				Element nextPrefsElement = new Element(PREFERENCE);
				nextPrefsElement.setAttribute(KEY, currentPropertyName);
				nextPrefsElement.addContent(new CDATA(prefsContent.toString()));
				classElement.addContent(nextPrefsElement);
			}
		} catch (Exception e) {
			MesquiteMessage.warnProgrammer("Could not read property value " + currentPropertyName + " for writing xml preferences on module: " + provider);
		}
		//nextPrefsElement.addContent(new CDATA())
	}
	return BaseXMLWriter.getDocumentAsString(preferencesDoc);
}
 
開發者ID:MesquiteProject,項目名稱:MesquiteArchive,代碼行數:36,代碼來源:MesquiteXMLPreferencesModule.java

示例4: parseFullXMLDocument

import org.apache.hivemind.util.PropertyUtils; //導入依賴的package包/類
/**
 * Ideally this should not be static but since we don't always have control over the superclass,
 * make it available for classes that might otherwise not be able to use it due to inheritance
 * constraints
 * @param prefsXML
 * @param provider
 * @param version
 * @param versionsMustMatch
 * @return
 */
public static boolean parseFullXMLDocument(String prefsXML, PropertyNamesProvider provider, 
		int version, boolean versionsMustMatch) {
	Document doc = BaseXMLReader.getDocumentFromString(prefsXML);
	if (doc == null) {
		// not xml -- can't parse it
		return false;
	}
	Element rootElement = doc.getRootElement();
	String shortClassName = getShortClassName(provider.getClass());
	Element classElement = rootElement.getChild(shortClassName);
	if (classElement != null) {
		String versionString = classElement.getChildText(VERSION);
		int versionInXml = MesquiteInteger.fromString(versionString);
		boolean acceptableVersion = (versionInXml == version || !versionsMustMatch);
		if (isCorrectRootTag(classElement.getName(), provider.getClass()) && acceptableVersion) {
			List prefsChildren = classElement.getChildren(PREFERENCE);
			for (Iterator iter = prefsChildren.iterator(); iter.hasNext();) {
				Element nextPreferenceElement = (Element) iter.next();
				String key = nextPreferenceElement.getAttributeValue(KEY);
				String value = nextPreferenceElement.getText();
				try {
					PropertyUtils.smartWrite(provider, key, value);
				} catch (Exception e) {
					MesquiteMessage.warnProgrammer("Could not write property value " + key + " for loading xml preferences on module: " + provider);
				}
			}
			return true;			
		}
	}
	return false;
}
 
開發者ID:MesquiteProject,項目名稱:MesquiteArchive,代碼行數:42,代碼來源:MesquiteXMLPreferencesModule.java


注:本文中的org.apache.hivemind.util.PropertyUtils類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。