@Override public MediaPackage loadFromXml(Node xml) throws MediaPackageException { if (serializer != null) { // FIXME This code runs if *any* serializer is present, regardless of the serializer implementation try { rewriteUrls(xml, serializer); return MediaPackageImpl.valueOf(xml); } catch (Exception e) { throw new MediaPackageException("Error deserializing paths in media package", e); } } else { return MediaPackageImpl.valueOf(xml); } }
/** * Unmarshals XML representation of a MediaPackage via JAXB. * * @param xml * the serialized xml string * @return the deserialized media package * @throws MediaPackageException */ public static MediaPackageImpl valueOf(String xml) throws MediaPackageException { try { return MediaPackageImpl.valueOf(IOUtils.toInputStream(xml, "UTF-8")); } catch (IOException e) { throw new MediaPackageException(e); } }
/** * {@inheritDoc} * * @see org.opencastproject.mediapackage.MediaPackageBuilder#loadFromXml(java.io.InputStream) */ public MediaPackage loadFromXml(InputStream is) throws MediaPackageException { if (serializer != null) { // FIXME This code runs if *any* serializer is present, regardless of the serializer implementation try { Document xml = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(is); rewriteUrls(xml, serializer); return MediaPackageImpl.valueOf(xml); } catch (Exception e) { throw new MediaPackageException("Error deserializing paths in media package", e); } } else { return MediaPackageImpl.valueOf(is); } }