@Override public void writeTo(final OutputStream out, final String encoding) throws Exception { // Marshal the ASX playlist. final StringWriter writer = new StringWriter(); final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/playlist/asx"); // May throw Exception. // Specifies whether XML documents (as generated at marshalling) should use indentation or not. Default is false. serializer.getMarshaller().setProperty("org.exolab.castor.indent", "true"); serializer.marshal(this, writer, false); // May throw Exception. String enc = encoding; if (enc == null) { enc = "UTF-8"; // FIXME US-ASCII? } final byte[] bytes = writer.toString().getBytes(enc); // May throw UnsupportedEncodingException. out.write(bytes); // Throws NullPointerException if out is null. May throw IOException. out.flush(); // May throw IOException. }
@Override public void writeTo(final OutputStream out, final String encoding) throws Exception { // Marshal the PLIST playlist. final StringWriter writer = new StringWriter(); final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/plist"); // May throw Exception. // Specifies whether XML documents (as generated at marshalling) should use indentation or not. Default is false. serializer.getMarshaller().setProperty("org.exolab.castor.indent", "true"); serializer.marshal(_plist, writer, false); // May throw Exception. String enc = encoding; if (enc == null) { enc = "UTF-8"; } final byte[] bytes = writer.toString().getBytes(enc); // May throw UnsupportedEncodingException. out.write(bytes); // Throws NullPointerException if out is null. May throw IOException. out.flush(); // May throw IOException. }
@Override public void writeTo(final OutputStream out, final String encoding) throws Exception { // Marshal the SMIL playlist. final StringWriter writer = new StringWriter(); final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/playlist/wpl"); // May throw Exception. // Specifies whether XML documents (as generated at marshalling) should use indentation or not. Default is false. serializer.getMarshaller().setProperty("org.exolab.castor.indent", "true"); serializer.marshal(this, writer, false); // May throw Exception. String enc = encoding; if (enc == null) { enc = "UTF-8"; } final byte[] bytes = writer.toString().getBytes(enc); // May throw UnsupportedEncodingException. out.write(bytes); // Throws NullPointerException if out is null. May throw IOException. out.flush(); // May throw IOException. }
@Override public void writeTo(final OutputStream out, final String encoding) throws Exception { // Marshal the playlist. final StringWriter writer = new StringWriter(); final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/playlist/xspf"); // May throw Exception. // Specifies whether XML documents (as generated at marshalling) should use indentation or not. Default is false. serializer.getMarshaller().setProperty("org.exolab.castor.indent", "true"); serializer.marshal(this, writer, false); // May throw Exception. String enc = encoding; if (enc == null) { enc = "UTF-8"; } final byte[] bytes = writer.toString().getBytes(enc); // May throw UnsupportedEncodingException. out.write(bytes); // Throws NullPointerException if out is null. May throw IOException. out.flush(); // May throw IOException. }
@Override public void writeTo(final OutputStream out, final String encoding) throws Exception { // Marshal the document. final StringWriter writer = new StringWriter(); final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/atom"); // May throw Exception. // Specifies whether XML documents (as generated at marshalling) should use indentation or not. Default is false. serializer.getMarshaller().setProperty("org.exolab.castor.indent", "true"); //serializer.getMarshaller().setNamespaceMapping("", "http://www.w3.org/2005/Atom"); serializer.marshal(_feed, writer, false); // May throw Exception. String enc = encoding; if (enc == null) { enc = "UTF-8"; } final byte[] bytes = writer.toString().getBytes(enc); // May throw UnsupportedEncodingException. out.write(bytes); // Throws NullPointerException if out is null. May throw IOException. out.flush(); // May throw IOException. }
@Override public void writeTo(final OutputStream out, final String encoding) throws Exception { // Marshal the B4S playlist. final StringWriter writer = new StringWriter(); final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/playlist/b4s"); // May throw Exception. // Specifies whether XML documents (as generated at marshalling) should use indentation or not. Default is false. serializer.getMarshaller().setProperty("org.exolab.castor.indent", "true"); serializer.marshal(this, writer, false); // May throw Exception. String enc = encoding; if (enc == null) { enc = "UTF-8"; } final byte[] bytes = writer.toString().getBytes(enc); // May throw UnsupportedEncodingException. out.write(bytes); // Throws NullPointerException if out is null. May throw IOException. out.flush(); // May throw IOException. }
@Override public void writeTo(final OutputStream out, final String encoding) throws Exception { // Marshal the SMIL playlist. final StringWriter writer = new StringWriter(); final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/playlist/smil"); // May throw Exception. // Specifies whether XML documents (as generated at marshalling) should use indentation or not. Default is false. serializer.getMarshaller().setProperty("org.exolab.castor.indent", "true"); serializer.marshal(this, writer, false); // May throw Exception. String enc = encoding; if (enc == null) { enc = "UTF-8"; } final byte[] bytes = writer.toString().getBytes(enc); // May throw UnsupportedEncodingException. out.write(bytes); // Throws NullPointerException if out is null. May throw IOException. out.flush(); // May throw IOException. }
@Override public void writeTo(final OutputStream out, final String encoding) throws Exception { // Marshal the playlist. final StringWriter writer = new StringWriter(); final XmlSerializer serializer = XmlSerializer.getMapping( "chameleon/playlist/hypetape"); // May throw Exception. // Specifies whether XML documents (as generated at marshalling) should use indentation or not. Default is false. serializer.getMarshaller().setProperty("org.exolab.castor.indent", "true"); serializer.marshal(this, writer, false); // May throw Exception. String enc = encoding; if (enc == null) { enc = "UTF-8"; } final byte[] bytes = writer.toString().getBytes(enc); // May throw UnsupportedEncodingException. out.write(bytes); // Throws NullPointerException if out is null. May throw IOException. out.flush(); // May throw IOException. }
@Override public void writeTo(final OutputStream out, final String encoding) throws Exception { // Marshal the RSS document. final StringWriter writer = new StringWriter(); final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/rss"); // May throw Exception. // Specifies whether XML documents (as generated at marshalling) should use indentation or not. Default is false. serializer.getMarshaller().setProperty("org.exolab.castor.indent", "true"); //serializer.getMarshaller().setNamespaceMapping("", "http://purl.org/rss/1.0/modules/content/"); serializer.getMarshaller().setNamespaceMapping("media", "http://search.yahoo.com/mrss/"); serializer.marshal(_rss, writer, false); // May throw Exception. String enc = encoding; if (enc == null) { enc = "UTF-8"; } final byte[] bytes = writer.toString().getBytes(enc); // May throw UnsupportedEncodingException. out.write(bytes); // Throws NullPointerException if out is null. May throw IOException. out.flush(); // May throw IOException. }
@Override public SpecificPlaylist readFrom(final InputStream in, final String encoding, final Log logger) throws Exception { String enc = encoding; if (enc == null) { enc = "UTF-8"; } String str = IOUtils.toString(in, enc); // May throw IOException. Throws NullPointerException if in is null. // Replace all occurrences of a single '&' with "&" (or leave this construct as is). // First replace blindly all '&' to its corresponding character reference. str = str.replace("&", "&"); // Then restore any existing character reference. str = str.replaceAll("&([a-zA-Z0-9#]+;)", "&$1"); // Shall not throw PatternSyntaxException. // Unmarshal the B4S playlist. final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/playlist/b4s"); // May throw Exception. serializer.getUnmarshaller().setIgnoreExtraElements(false); // Force an error if unknown elements are found. final StringReader reader = new StringReader(str); final SpecificPlaylist ret = (SpecificPlaylist) serializer.unmarshal(reader); // May throw Exception. ret.setProvider(this); return ret; }
@Override public SpecificPlaylist readFrom(final InputStream in, final String encoding, final Log logger) throws Exception { String enc = encoding; if (enc == null) { enc = "UTF-8"; } String str = IOUtils.toString(in, enc); // May throw IOException. Throws NullPointerException if in is null. // Replace all occurrences of a single '&' with "&" (or leave this construct as is). // First replace blindly all '&' to its corresponding character reference. str = str.replace("&", "&"); // Then restore any existing character reference. str = str.replaceAll("&([a-zA-Z0-9#]+;)", "&$1"); // Shall not throw PatternSyntaxException. // Unmarshal the SMIL playlist. final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/playlist/smil"); // May throw Exception. serializer.getUnmarshaller().setIgnoreExtraElements(true); // Many SMIL elements are not implemented yet. final StringReader reader = new StringReader(str); final SpecificPlaylist ret = (SpecificPlaylist) serializer.unmarshal(reader); // May throw Exception. ret.setProvider(this); return ret; }
@Override public SpecificPlaylist readFrom(final InputStream in, final String encoding, final Log logger) throws Exception { String enc = encoding; if (enc == null) { enc = "UTF-8"; } String str = IOUtils.toString(in, enc); // May throw IOException. Throws NullPointerException if in is null. // Replace all occurrences of a single '&' with "&" (or leave this construct as is). // First replace blindly all '&' to its corresponding character reference. str = str.replace("&", "&"); // Then restore any existing character reference. str = str.replaceAll("&([a-zA-Z0-9#]+;)", "&$1"); // Shall not throw PatternSyntaxException. // Unmarshal the WPL playlist. final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/playlist/xspf"); // May throw Exception. serializer.getUnmarshaller().setIgnoreExtraElements(true); final StringReader reader = new StringReader(str); final SpecificPlaylist ret = (SpecificPlaylist) serializer.unmarshal(reader); // May throw Exception. ret.setProvider(this); return ret; }
@Override public SpecificPlaylist readFrom(final InputStream in, final String encoding, final Log logger) throws Exception { String enc = encoding; if (enc == null) { enc = "UTF-8"; } String str = IOUtils.toString(in, enc); // May throw IOException. Throws NullPointerException if in is null. // Replace all occurrences of a single '&' with "&" (or leave this construct as is). // First replace blindly all '&' to its corresponding character reference. str = str.replace("&", "&"); // Then restore any existing character reference. str = str.replaceAll("&([a-zA-Z0-9#]+;)", "&$1"); // Shall not throw PatternSyntaxException. // Unmarshal the WPL playlist. final XmlSerializer serializer = XmlSerializer.getMapping( "chameleon/playlist/hypetape"); // May throw Exception. serializer.getUnmarshaller().setIgnoreExtraElements(false); final StringReader reader = new StringReader(str); final SpecificPlaylist ret = (SpecificPlaylist) serializer.unmarshal(reader); // May throw Exception. ret.setProvider(this); return ret; }
@Override public SpecificPlaylist readFrom(final InputStream in, final String encoding, final Log logger) throws Exception { String enc = encoding; if (enc == null) { enc = "UTF-8"; } String str = IOUtils.toString(in, enc); // May throw IOException. Throws NullPointerException if in is null. // Replace all occurrences of a single '&' with "&" (or leave this construct as is). // First replace blindly all '&' to its corresponding character reference. str = str.replace("&", "&"); // Then restore any existing character reference. str = str.replaceAll("&([a-zA-Z0-9#]+;)", "&$1"); // Shall not throw PatternSyntaxException. // Unmarshal the WPL playlist. final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/playlist/wpl"); // May throw Exception. serializer.getUnmarshaller().setIgnoreExtraElements(false); // Force an error if unknown elements are found. final StringReader reader = new StringReader(str); final SpecificPlaylist ret = (SpecificPlaylist) serializer.unmarshal(reader); // May throw Exception. ret.setProvider(this); return ret; }
final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/playlist/asx"); // May throw Exception. serializer.getUnmarshaller().setIgnoreExtraElements(false); // Force an error if unknown elements are found.
@Override public SpecificPlaylist readFrom(final InputStream in, final String encoding, final Log logger) throws Exception { String enc = encoding; if (enc == null) { enc = "UTF-8"; } String str = IOUtils.toString(in, enc); // May throw IOException. Throws NullPointerException if in is null. // Replace all occurrences of a single '&' with "&" (or leave this construct as is). // First replace blindly all '&' to its corresponding character reference. str = str.replace("&", "&"); // Then restore any existing character reference. str = str.replaceAll("&([a-zA-Z0-9#]+;)", "&$1"); // Shall not throw PatternSyntaxException. // Workaround Castor bug 2521: str = str.replace("xmlns=\"http://www.w3.org/2005/Atom\"", ""); // Unmarshal the SMIL playlist. final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/atom"); // May throw Exception. serializer.getUnmarshaller().setIgnoreExtraElements(true); final StringReader reader = new StringReader(str); // TODO Allow also an Entry. final Feed feed = (Feed) serializer.unmarshal(reader); // May throw Exception. final AtomPlaylist ret = new AtomPlaylist(); ret.setProvider(this); ret.setFeed(feed); return ret; }
@Override public SpecificPlaylist readFrom(final InputStream in, final String encoding, final Log logger) throws Exception { String enc = encoding; if (enc == null) { enc = "UTF-8"; } String str = IOUtils.toString(in, enc); // May throw IOException. Throws NullPointerException if in is null. // Replace all occurrences of a single '&' with "&" (or leave this construct as is). // First replace blindly all '&' to its corresponding character reference. str = str.replace("&", "&"); // Then restore any existing character reference. str = str.replaceAll("&([a-zA-Z0-9#]+;)", "&$1"); // Shall not throw PatternSyntaxException. // Unmarshal the SMIL playlist. final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/rss"); // May throw Exception. serializer.getUnmarshaller().setIgnoreExtraElements(true); final StringReader reader = new StringReader(str); final RSS rss = (RSS) serializer.unmarshal(reader); // May throw Exception. final RSSPlaylist ret = new RSSPlaylist(); ret.setProvider(this); ret.setRSS(rss); return ret; }
@Override public SpecificPlaylist readFrom(final InputStream in, final String encoding, final Log logger) throws Exception { String enc = encoding; if (enc == null) { enc = "UTF-8"; } String str = IOUtils.toString(in, enc); // May throw IOException. Throws NullPointerException if in is null. // Replace all occurrences of a single '&' with "&" (or leave this construct as is). // First replace blindly all '&' to its corresponding character reference. str = str.replace("&", "&"); // Then restore any existing character reference. str = str.replaceAll("&([a-zA-Z0-9#]+;)", "&$1"); // Shall not throw PatternSyntaxException. // Unmarshal the playlist. final XmlSerializer serializer = XmlSerializer.getMapping("chameleon/plist"); // May throw Exception. serializer.getUnmarshaller().setIgnoreExtraElements(false); // Force an error if unknown elements are found. final StringReader reader = new StringReader(str); final Plist plist = (Plist) serializer.unmarshal(reader); // May throw Exception. final PlistPlaylist ret = new PlistPlaylist(); ret.setProvider(this); ret.setPlist(plist); return ret; }