Example usage for com.liferay.portal.xml StAXReaderUtil read

List of usage examples for com.liferay.portal.xml StAXReaderUtil read

Introduction

In this page you can find the example usage for com.liferay.portal.xml StAXReaderUtil read.

Prototype

public static String read(XMLEventReader xmlEventReader) throws XMLStreamException 

Source Link

Usage

From source file:com.liferay.portlet.PortletPreferencesFactoryImpl.java

License:Open Source License

protected Preference readPreference(XMLEventReader xmlEventReader) throws XMLStreamException {

    String name = null;/*from  w  ww. ja  v  a2s  . co m*/
    List<String> values = new ArrayList<String>();
    boolean readOnly = false;

    while (xmlEventReader.hasNext()) {
        XMLEvent xmlEvent = xmlEventReader.nextEvent();

        if (xmlEvent.isStartElement()) {
            StartElement startElement = xmlEvent.asStartElement();

            String elementName = startElement.getName().getLocalPart();

            if (elementName.equals("name")) {
                name = StAXReaderUtil.read(xmlEventReader);
            } else if (elementName.equals("value")) {
                String value = StAXReaderUtil.read(xmlEventReader);

                values.add(value);
            } else if (elementName.equals("read-only")) {
                String value = StAXReaderUtil.read(xmlEventReader);

                readOnly = GetterUtil.getBoolean(value);
            }
        } else if (xmlEvent.isEndElement()) {
            EndElement endElement = xmlEvent.asEndElement();

            String elementName = endElement.getName().getLocalPart();

            if (elementName.equals("preference")) {
                break;
            }
        }
    }

    return new Preference(name, values.toArray(new String[values.size()]), readOnly);
}