Java 类java.beans.XMLDecoder 实例源码

项目:MFM    文件:PersistUtils.java   
public static Object loadAnObjectXML(String path) throws FileNotFoundException {
    try {
        XMLDecoder decoder = new XMLDecoder(new BufferedInputStream(new FileInputStream(path)));
        Object obj = decoder.readObject();
        decoder.close();
        return obj;
    } catch (FileNotFoundException e) {
        e.printStackTrace();
        throw e;
    }
}
项目:incubator-netbeans    文件:XMLBeanConvertor.java   
public Object read(java.io.Reader r) throws IOException, ClassNotFoundException {
    java.io.
    BufferedReader buf = new BufferedReader(r, 4096);
    CharBuffer arr = CharBuffer.allocate(2048);
    buf.mark(arr.capacity());
    buf.read(arr);
    arr.flip();

    Matcher m = Pattern.compile("<java").matcher(arr);
    if (m.find()) {
        buf.reset();
        buf.skip(m.start());
    } else {
        buf.reset();
    }
    XMLDecoder d = new XMLDecoder(new ReaderInputStream(buf, "UTF-8"));
    return d.readObject();
}
项目:oscm    文件:RestDAO.java   
/**
 * Decode a Java object, which is contained in the given XML
 * 
 * @param xml
 *            a XML string
 * @return a Java object
 * @throws BillingException
 *             if the XML decoding fails
 */
Object decodeXml(String xml) throws BillingException {

    if (xml != null) {
        try (XMLDecoder xmlDecoder = new XMLDecoder(
                new ByteArrayInputStream(
                        xml.getBytes(StandardCharsets.UTF_8)))) {
            return xmlDecoder.readObject();
        } catch (Exception e) {
            throw new BillingException(
                    "File application response decoding error.");
        }
    } else {
        return null;
    }
}
项目:TestDemo1-github    文件:ObjectToXMLUtil.java   
/** 
 * 读取由objSource指定的XML文件中的序列化保存的对象,返回的结果经过了List封装 
 * @param objSource 带全部文件路径的文件全名 
 * @return 由XML文件里面保存的对象构成的List列表(可能是一个或者多个的序列化保存的对象)   
 * @throws FileNotFoundException 指定的对象读取资源不存在 
 * @throws IOException 读取发生错误 
 * @throws Exception 其他运行时异常发生 
 */ 
public static List objectXmlDecoder(String objSource)  
 throws FileNotFoundException,IOException,Exception 
{ 
 List objList = new ArrayList();     
 File fin = new File(objSource); 
 FileInputStream fis = new FileInputStream(fin); 
 XMLDecoder decoder = new XMLDecoder(fis); 
 Object obj = null; 
 try 
 { 
  while( (obj = decoder.readObject()) != null) 
  { 
   objList.add(obj); 
  } 
 } 
 catch (Exception e) 
 { 
  // TODO Auto-generated catch block     
 } 
 fis.close(); 
 decoder.close();      
 return objList; 
}
项目:jdk8u-jdk    文件:AbstractTest.java   
static void test(AbstractTest object) {
    ByteArrayOutputStream output = new ByteArrayOutputStream();

    XMLEncoder encoder = new XMLEncoder(output);
    encoder.setPersistenceDelegate(
            object.getClass(),
            new DefaultPersistenceDelegate(new String[] {"value"}));

    encoder.writeObject(object);
    encoder.close();

    System.out.print(output);

    ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray());
    XMLDecoder decoder = new XMLDecoder(input);
    AbstractTest result = (AbstractTest) decoder.readObject();
    decoder.close();

    if (object.getValue() != result.getValue())
        throw new Error("Should be " + object);
}
项目:jdk8u-jdk    文件:AbstractTest.java   
/**
 * This is entry point to start testing.
 *
 * @param security  use {@code true} to start
 *                  second pass in secure context
 */
final void test(boolean security) {
    byte[] array = getFieldValue("XML").getBytes(); // NON-NLS: the field name
    ByteArrayInputStream input = new ByteArrayInputStream(array);
    XMLDecoder decoder = new XMLDecoder(input);
    decoder.setExceptionListener(this);
    validate(decoder);
    try {
        throw new Error("unexpected object" + decoder.readObject());
    } catch (ArrayIndexOutOfBoundsException exception) {
        // expected exception
    }
    decoder.close();
    if (security) {
        System.setSecurityManager(new SecurityManager());
        test(false);
    }
}
项目:jdk8u-jdk    文件:TestArray.java   
@Override
protected void validate(XMLDecoder decoder) {
    Number[] numbers = getArray(Number.class, 2, decoder.readObject());
    if (!numbers[0].equals(Byte.valueOf("-111"))) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected byte value");
    }
    if (!numbers[1].equals(Long.valueOf("1111"))) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected long value");
    }

    Object[] objects = getArray(Object.class, 3, decoder.readObject());
    if (objects[0] != null) {
        throw new Error("unexpected first value");
    }
    if (!objects[1].equals("Hello, world!")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected string value");
    }
    if (objects[2] != null) {
        throw new Error("unexpected last value");
    }
}
项目:jdk8u-jdk    文件:TestObject.java   
@Override
protected void validate(XMLDecoder decoder) {
    JPanel panel = (JPanel) decoder.readObject();
    if (2 != panel.getComponents().length) {
        throw new Error("unexpected component count");
    }
    JButton button = (JButton) panel.getComponents()[0];
    if (!button.getText().equals("button")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected button text");
    }
    if (SwingConstants.CENTER != button.getVerticalAlignment()) {
        throw new Error("unexpected vertical alignment");
    }
    JLabel label = (JLabel) panel.getComponents()[1];
    if (!label.getText().equals("label")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected label text");
    }
    if (button != label.getLabelFor()) {
        throw new Error("unexpected component");
    }
}
项目:openjdk-jdk10    文件:AbstractTest.java   
static void test(AbstractTest object) {
    ByteArrayOutputStream output = new ByteArrayOutputStream();

    XMLEncoder encoder = new XMLEncoder(output);
    encoder.setPersistenceDelegate(
            object.getClass(),
            new DefaultPersistenceDelegate(new String[] {"value"}));

    encoder.writeObject(object);
    encoder.close();

    System.out.print(output);

    ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray());
    XMLDecoder decoder = new XMLDecoder(input);
    AbstractTest result = (AbstractTest) decoder.readObject();
    decoder.close();

    if (object.getValue() != result.getValue())
        throw new Error("Should be " + object);
}
项目:openjdk-jdk10    文件:AbstractTest.java   
/**
 * This is entry point to start testing.
 *
 * @param security  use {@code true} to start
 *                  second pass in secure context
 */
final void test(boolean security) {
    byte[] array = getFieldValue("XML").getBytes(); // NON-NLS: the field name
    ByteArrayInputStream input = new ByteArrayInputStream(array);
    XMLDecoder decoder = new XMLDecoder(input);
    decoder.setExceptionListener(this);
    validate(decoder);
    try {
        throw new Error("unexpected object" + decoder.readObject());
    } catch (ArrayIndexOutOfBoundsException exception) {
        // expected exception
    }
    decoder.close();
    if (security) {
        System.setSecurityManager(new SecurityManager());
        test(false);
    }
}
项目:openjdk-jdk10    文件:TestArray.java   
@Override
protected void validate(XMLDecoder decoder) {
    Number[] numbers = getArray(Number.class, 2, decoder.readObject());
    if (!numbers[0].equals(Byte.valueOf("-111"))) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected byte value");
    }
    if (!numbers[1].equals(Long.valueOf("1111"))) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected long value");
    }

    Object[] objects = getArray(Object.class, 3, decoder.readObject());
    if (objects[0] != null) {
        throw new Error("unexpected first value");
    }
    if (!objects[1].equals("Hello, world!")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected string value");
    }
    if (objects[2] != null) {
        throw new Error("unexpected last value");
    }
}
项目:openjdk-jdk10    文件:TestObject.java   
@Override
protected void validate(XMLDecoder decoder) {
    JPanel panel = (JPanel) decoder.readObject();
    if (2 != panel.getComponents().length) {
        throw new Error("unexpected component count");
    }
    JButton button = (JButton) panel.getComponents()[0];
    if (!button.getText().equals("button")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected button text");
    }
    if (SwingConstants.CENTER != button.getVerticalAlignment()) {
        throw new Error("unexpected vertical alignment");
    }
    JLabel label = (JLabel) panel.getComponents()[1];
    if (!label.getText().equals("label")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected label text");
    }
    if (button != label.getLabelFor()) {
        throw new Error("unexpected component");
    }
}
项目:lookaside_java-1.8.0-openjdk    文件:TestObject.java   
@Override
protected void validate(XMLDecoder decoder) {
    JPanel panel = (JPanel) decoder.readObject();
    if (2 != panel.getComponents().length) {
        throw new Error("unexpected component count");
    }
    JButton button = (JButton) panel.getComponents()[0];
    if (!button.getText().equals("button")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected button text");
    }
    if (SwingConstants.CENTER != button.getVerticalAlignment()) {
        throw new Error("unexpected vertical alignment");
    }
    JLabel label = (JLabel) panel.getComponents()[1];
    if (!label.getText().equals("label")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected label text");
    }
    if (button != label.getLabelFor()) {
        throw new Error("unexpected component");
    }
}
项目:openjdk9    文件:AbstractTest.java   
/**
 * This is entry point to start testing.
 *
 * @param security  use {@code true} to start
 *                  second pass in secure context
 */
final void test(boolean security) {
    byte[] array = getFieldValue("XML").getBytes(); // NON-NLS: the field name
    ByteArrayInputStream input = new ByteArrayInputStream(array);
    XMLDecoder decoder = new XMLDecoder(input);
    decoder.setExceptionListener(this);
    validate(decoder);
    try {
        throw new Error("unexpected object" + decoder.readObject());
    } catch (ArrayIndexOutOfBoundsException exception) {
        // expected exception
    }
    decoder.close();
    if (security) {
        System.setSecurityManager(new SecurityManager());
        test(false);
    }
}
项目:lookaside_java-1.8.0-openjdk    文件:TestArray.java   
@Override
protected void validate(XMLDecoder decoder) {
    Number[] numbers = getArray(Number.class, 2, decoder.readObject());
    if (!numbers[0].equals(Byte.valueOf("-111"))) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected byte value");
    }
    if (!numbers[1].equals(Long.valueOf("1111"))) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected long value");
    }

    Object[] objects = getArray(Object.class, 3, decoder.readObject());
    if (objects[0] != null) {
        throw new Error("unexpected first value");
    }
    if (!objects[1].equals("Hello, world!")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected string value");
    }
    if (objects[2] != null) {
        throw new Error("unexpected last value");
    }
}
项目:openjdk9    文件:TestObject.java   
@Override
protected void validate(XMLDecoder decoder) {
    JPanel panel = (JPanel) decoder.readObject();
    if (2 != panel.getComponents().length) {
        throw new Error("unexpected component count");
    }
    JButton button = (JButton) panel.getComponents()[0];
    if (!button.getText().equals("button")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected button text");
    }
    if (SwingConstants.CENTER != button.getVerticalAlignment()) {
        throw new Error("unexpected vertical alignment");
    }
    JLabel label = (JLabel) panel.getComponents()[1];
    if (!label.getText().equals("label")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected label text");
    }
    if (button != label.getLabelFor()) {
        throw new Error("unexpected component");
    }
}
项目:jk-util    文件:JKObjectUtil.java   
/**
 * To object.
 *
 * @param xml
 *            the xml
 * @return the object
 */
public static Object toObject(final String xml) {
    // XStream x = createXStream();
    // return x.fromXML(xml);
    // try {
    final ByteArrayInputStream out = new ByteArrayInputStream(xml.getBytes());
    final XMLDecoder encoder = new XMLDecoder(out);
    final Object object = encoder.readObject();
    //
    encoder.close();
    return object;
    // } catch (Exception e) {
    // System.err.println("Failed to decode object : \n" + xml);
    // return null;
    // }
    // return null;
}
项目:netbeansplugins    文件:Persistance.java   
public List<HttpPostForm> load() {
    final List<HttpPostForm> list = new ArrayList<>();

    final FileObject fo = getSaveFolder();
    final File fileFolder = FileUtil.toFile(fo);

    final File[] files = fileFolder.listFiles();
    for (int i = 0; i < files.length; i++) {
        final File aFile = files[i];

        try (FileInputStream fis = new FileInputStream(aFile)) {
            XMLDecoder xmlDec = new XMLDecoder(fis);
            HttpPostForm hpf = (HttpPostForm) xmlDec.readObject();

            list.add(hpf);
        } catch (IOException ex) {
            ErrorManager.getDefault().notify(ex);
        }
    }
    return list;
}
项目:jdk8u_jdk    文件:AbstractTest.java   
static void test(AbstractTest object) {
    ByteArrayOutputStream output = new ByteArrayOutputStream();

    XMLEncoder encoder = new XMLEncoder(output);
    encoder.setPersistenceDelegate(
            object.getClass(),
            new DefaultPersistenceDelegate(new String[] {"value"}));

    encoder.writeObject(object);
    encoder.close();

    System.out.print(output);

    ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray());
    XMLDecoder decoder = new XMLDecoder(input);
    AbstractTest result = (AbstractTest) decoder.readObject();
    decoder.close();

    if (object.getValue() != result.getValue())
        throw new Error("Should be " + object);
}
项目:jdk8u_jdk    文件:AbstractTest.java   
/**
 * This is entry point to start testing.
 *
 * @param security  use {@code true} to start
 *                  second pass in secure context
 */
final void test(boolean security) {
    byte[] array = getFieldValue("XML").getBytes(); // NON-NLS: the field name
    ByteArrayInputStream input = new ByteArrayInputStream(array);
    XMLDecoder decoder = new XMLDecoder(input);
    decoder.setExceptionListener(this);
    validate(decoder);
    try {
        throw new Error("unexpected object" + decoder.readObject());
    } catch (ArrayIndexOutOfBoundsException exception) {
        // expected exception
    }
    decoder.close();
    if (security) {
        System.setSecurityManager(new SecurityManager());
        test(false);
    }
}
项目:jdk8u_jdk    文件:TestArray.java   
@Override
protected void validate(XMLDecoder decoder) {
    Number[] numbers = getArray(Number.class, 2, decoder.readObject());
    if (!numbers[0].equals(Byte.valueOf("-111"))) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected byte value");
    }
    if (!numbers[1].equals(Long.valueOf("1111"))) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected long value");
    }

    Object[] objects = getArray(Object.class, 3, decoder.readObject());
    if (objects[0] != null) {
        throw new Error("unexpected first value");
    }
    if (!objects[1].equals("Hello, world!")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected string value");
    }
    if (objects[2] != null) {
        throw new Error("unexpected last value");
    }
}
项目:jdk8u_jdk    文件:TestObject.java   
@Override
protected void validate(XMLDecoder decoder) {
    JPanel panel = (JPanel) decoder.readObject();
    if (2 != panel.getComponents().length) {
        throw new Error("unexpected component count");
    }
    JButton button = (JButton) panel.getComponents()[0];
    if (!button.getText().equals("button")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected button text");
    }
    if (SwingConstants.CENTER != button.getVerticalAlignment()) {
        throw new Error("unexpected vertical alignment");
    }
    JLabel label = (JLabel) panel.getComponents()[1];
    if (!label.getText().equals("label")) { // NON-NLS: hardcoded in XML
        throw new Error("unexpected label text");
    }
    if (button != label.getLabelFor()) {
        throw new Error("unexpected component");
    }
}
项目:lookaside_java-1.8.0-openjdk    文件:AbstractTest.java   
static void test(AbstractTest object) {
    ByteArrayOutputStream output = new ByteArrayOutputStream();

    XMLEncoder encoder = new XMLEncoder(output);
    encoder.setPersistenceDelegate(
            object.getClass(),
            new DefaultPersistenceDelegate(new String[] {"value"}));

    encoder.writeObject(object);
    encoder.close();

    System.out.print(output);

    ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray());
    XMLDecoder decoder = new XMLDecoder(input);
    AbstractTest result = (AbstractTest) decoder.readObject();
    decoder.close();

    if (object.getValue() != result.getValue())
        throw new Error("Should be " + object);
}
项目:marathonv5    文件:CheckList.java   
public static CheckList read(File file) throws Exception {
    XMLDecoder decoder = new XMLDecoder(new FileInputStream(file));
    try {
        return (CheckList) decoder.readObject();
    } finally {
        decoder.close();
    }
}
项目:marathonv5    文件:CheckListEditor.java   
@Override public void setText(String code) {
    ByteArrayInputStream stream = new ByteArrayInputStream(code.getBytes(StandardCharsets.UTF_8));
    XMLDecoder decoder = new XMLDecoder(stream);
    checklist = (CheckList) decoder.readObject();
    decoder.close();
    checkListView.setCheckListNode(new CheckListFormNode(checklist, Mode.EDIT));
}
项目:oscm    文件:MigrateTriggersTest.java   
@Test
public void getObjectFromXML_closeStream() throws Exception {
    // given
    ResultSet rs = mock(ResultSet.class);
    InputStream is = mock(InputStream.class);
    doReturn(is).when(rs).getBinaryStream(eq("value"));
    XMLDecoder decoder = mock(XMLDecoder.class);
    doReturn(decoder).when(dbtask).newXmlDecoder(any(InputStream.class));

    // when
    dbtask.getObjectFromXML(rs, String.class);

    // then
    verify(dbtask).closeStream(is);
}
项目:dlface    文件:FrdStorageSupportImpl.java   
@Override
public <E> E loadConfigFromFile(String fileName, Class<E> type) throws Exception {
    try(XMLDecoder xmlDecoder = new XMLDecoder(new BufferedInputStream(new FileInputStream(getFileForFilename(fileName))), null, null, type.getClassLoader())) {
        Object theObject = xmlDecoder.readObject();
        if(type.isInstance(theObject)) {
            return type.cast(theObject);
        } else {
            LOGGER.warn("Unknown file format {}. Not {}.", fileName, type.getName());
            throw new Exception("Unknown file format");
        }
    } catch (RuntimeException e) {
        throw new Exception(e);
    }
}
项目:NBANDROID-V2    文件:ReadOnlyURLMapper.java   
public ReadOnlyURLMapper() {

        if (LASTPLATFORMS_FILE.exists()) {
            try {
                XMLDecoder decoder = new XMLDecoder(new FileInputStream(LASTPLATFORMS_FILE));
                String[] last = (String[]) decoder.readObject();
                if (last != null) {
                    reference.set(last);
                }
            } catch (Exception ex) {
            }
        }

    }
项目:OpenJSharp    文件:JavaElementHandler.java   
/**
 * Returns the owner of the owner document handler
 * as a value of &lt;java&gt; element.
 *
 * @return the owner of the owner document handler
 */
private Object getValue() {
    Object owner = getOwner().getOwner();
    if ((this.type == null) || isValid(owner)) {
        return owner;
    }
    if (owner instanceof XMLDecoder) {
        XMLDecoder decoder = (XMLDecoder) owner;
        owner = decoder.getOwner();
        if (isValid(owner)) {
            return owner;
        }
    }
    throw new IllegalStateException("Unexpected owner class: " + owner.getClass().getName());
}
项目:jdk8u-jdk    文件:JavaElementHandler.java   
/**
 * Returns the owner of the owner document handler
 * as a value of &lt;java&gt; element.
 *
 * @return the owner of the owner document handler
 */
private Object getValue() {
    Object owner = getOwner().getOwner();
    if ((this.type == null) || isValid(owner)) {
        return owner;
    }
    if (owner instanceof XMLDecoder) {
        XMLDecoder decoder = (XMLDecoder) owner;
        owner = decoder.getOwner();
        if (isValid(owner)) {
            return owner;
        }
    }
    throw new IllegalStateException("Unexpected owner class: " + owner.getClass().getName());
}
项目:jdk8u-jdk    文件:AbstractTest.java   
private Object readObject(byte[] array) {
    ByteArrayInputStream input = new ByteArrayInputStream(array);
    XMLDecoder decoder = new XMLDecoder(input);
    decoder.setExceptionListener(this);
    initialize(decoder);
    Object object = decoder.readObject();
    decoder.close();
    return object;
}
项目:jdk8u-jdk    文件:Test6329581.java   
private Object decode(byte[] array) {
    ByteArrayInputStream in = new ByteArrayInputStream(array);
    XMLDecoder decoder = new XMLDecoder(in, null, this, this);
    Object object = decoder.readObject();
    validate(object);
    decoder.close();
    return object;
}
项目:jdk8u-jdk    文件:Test6341798.java   
private static void test(Locale locale, byte[] data) {
    Locale.setDefault(locale);
    System.out.println("locale = " + locale);

    XMLDecoder decoder = new XMLDecoder(new ByteArrayInputStream(data));
    System.out.println("object = " + decoder.readObject());
    decoder.close();
}
项目:jdk8u-jdk    文件:Test6338070.java   
public static void main(String[] args) {
    Test6338070 test = new Test6338070();
    InputStream stream = new ByteArrayInputStream(DATA.getBytes());
    new XMLDecoder(stream, test).close();
    if (test.message == null) {
        throw new Error("owner's method is not called");
    }
}
项目:jdk8u-jdk    文件:TestVar.java   
@Override
protected void validate(XMLDecoder decoder) {
    for (int i = 0; i < 3; i++) {
        if (decoder != decoder.readObject()) {
            throw new Error("decoder instance expected");
        }
    }
}
项目:jdk8u-jdk    文件:TestInt.java   
@Override
protected void validate(XMLDecoder decoder) {
    validate(0, decoder.readObject());
    validate((int) Byte.MAX_VALUE, decoder.readObject());
    validate((int) Byte.MIN_VALUE, decoder.readObject());
    validate((int) Short.MAX_VALUE, decoder.readObject());
    validate((int) Short.MIN_VALUE, decoder.readObject());
    validate(Integer.MAX_VALUE, decoder.readObject());
    validate(Integer.MIN_VALUE, decoder.readObject());
}
项目:jdk8u-jdk    文件:TestFloat.java   
@Override
protected void validate(XMLDecoder decoder) {
    validate(0.0f, decoder.readObject());
    validate(100.0f, decoder.readObject());
    validate(-1e15f, decoder.readObject());
    validate(100e-20f, decoder.readObject());
}
项目:jdk8u-jdk    文件:TestBoolean.java   
@Override
protected void validate(XMLDecoder decoder) {
    if (!Boolean.TRUE.equals(decoder.readObject())) {
        throw new Error("true expected");
    }
    if (!Boolean.FALSE.equals(decoder.readObject())) {
        throw new Error("false expected");
    }
}
项目:jdk8u-jdk    文件:TestJava.java   
@Override
protected void validate(XMLDecoder decoder) {
    decoder.setOwner(this);
    if (this != decoder.readObject()) {
        throw new Error("owner should be the same");
    }
    if (this.message == null) {
        throw new Error("owner's method is not called");
    }
}
项目:jdk8u-jdk    文件:TestNew.java   
@Override
protected void validate(XMLDecoder decoder) {
    validate(decoder.readObject());
    validate(decoder.readObject(), null);
    validate(decoder.readObject(), "single");
    validate(decoder.readObject(), "first", "second", "third");
}