Search in sources :

Example 1 with Media

use of data.media.Media in project jvm-serializers by eishay.

the class JacksonJsonTree method readMedia.

protected static Media readMedia(JsonNode node) {
    Media media = new Media();
    JsonNode bitrate = node.get("bitrate");
    if (bitrate != null && !bitrate.isNull()) {
        media.bitrate = bitrate.intValue();
        media.hasBitrate = true;
    }
    media.copyright = node.path("copyright").textValue();
    media.duration = node.path("duration").longValue();
    media.format = node.path("format").textValue();
    media.height = node.path("height").intValue();
    media.player = Media.Player.valueOf(node.get("player").textValue());
    ArrayNode personsArrayNode = (ArrayNode) node.get("persons");
    int size = personsArrayNode.size();
    List<String> persons = new ArrayList<String>(size);
    for (JsonNode person : personsArrayNode) {
        persons.add(person.textValue());
    }
    media.persons = persons;
    media.size = node.get("size").intValue();
    media.title = node.get("title").textValue();
    media.uri = node.get("uri").textValue();
    media.width = node.get("width").intValue();
    return media;
}
Also used : Media(data.media.Media) ArrayList(java.util.ArrayList) JsonNode(com.fasterxml.jackson.databind.JsonNode) ArrayNode(com.fasterxml.jackson.databind.node.ArrayNode)

Example 2 with Media

use of data.media.Media in project jvm-serializers by eishay.

the class MediaTemplate method read.

@Override
public Media read(Unpacker unpacker, Media to, boolean required) throws IOException {
    unpacker.readArrayBegin();
    to = new Media(Templates.TString.read(unpacker, null, true), Templates.TString.read(unpacker, null, false), Templates.TInteger.read(unpacker, null, true), Templates.TInteger.read(unpacker, null, true), Templates.TString.read(unpacker, null, true), Templates.TLong.read(unpacker, null, true), Templates.TLong.read(unpacker, null, true), Templates.TInteger.read(unpacker, null, true), Templates.TBoolean.read(unpacker, null, true), personsTemplate.read(unpacker, null, true), mediaPlayerTemplate.read(unpacker, null, true), Templates.TString.read(unpacker, null, false));
    unpacker.readArrayEnd();
    return to;
}
Also used : Media(data.media.Media)

Example 3 with Media

use of data.media.Media in project jvm-serializers by eishay.

the class StaxDeserializer method readMedia.

private Media readMedia(XMLStreamReader parser) throws XMLStreamException {
    Media media = new Media();
    media.player = Media.Player.valueOf(readElement(parser, FULL_FIELD_NAME_PLAYER));
    media.uri = readElement(parser, FULL_FIELD_NAME_URI);
    media.title = readElementMaybe(parser, FULL_FIELD_NAME_TITLE);
    media.width = Integer.parseInt(readElement(parser, FULL_FIELD_NAME_WIDTH));
    media.height = Integer.parseInt(readElement(parser, FULL_FIELD_NAME_HEIGHT));
    media.format = readElement(parser, FULL_FIELD_NAME_FORMAT);
    media.duration = Long.parseLong(readElement(parser, FULL_FIELD_NAME_DURATION));
    media.size = Long.parseLong(readElement(parser, FULL_FIELD_NAME_SIZE));
    String bitrateString = readElement(parser, FULL_FIELD_NAME_BITRATE);
    if (bitrateString != null) {
        media.hasBitrate = true;
        media.bitrate = Integer.parseInt(bitrateString);
    }
    media.copyright = readElementMaybe(parser, FULL_FIELD_NAME_COPYRIGHT);
    searchTag(parser, FULL_FIELD_NAME_PERSONS);
    List<String> persons = new ArrayList<String>();
    do {
        persons.add(_getElementText(parser));
    } while (parser.nextTag() == XMLStreamConstants.START_ELEMENT && FULL_FIELD_NAME_PERSONS.equals(parser.getLocalName()));
    if (!FULL_FIELD_NAME_MEDIA.equals(parser.getLocalName())) {
        throw new IllegalStateException("Expected closing </" + FULL_FIELD_NAME_MEDIA + ">, got </" + parser.getLocalName() + ">");
    }
    media.persons = persons;
    return media;
}
Also used : Media(data.media.Media) ArrayList(java.util.ArrayList)

Example 4 with Media

use of data.media.Media in project jvm-serializers by eishay.

the class StaxDeserializer method readMediaContent.

private MediaContent readMediaContent(XMLStreamReader parser) throws XMLStreamException {
    searchTag(parser, "mc");
    Media media = readMedia(parser);
    List<Image> images = new ArrayList<Image>();
    if (parser.nextTag() != XMLStreamConstants.START_ELEMENT) {
        throw new IllegalStateException("Expected <im>, no START_ELEMENT encountered but " + parser.getEventType());
    }
    do {
        if (!FULL_FIELD_NAME_IMAGES.equals(parser.getLocalName())) {
            throw new IllegalStateException("Expected <" + FULL_FIELD_NAME_IMAGES + ">, got <" + parser.getLocalName() + ">");
        }
        images.add(readImage(parser));
    } while (parser.nextTag() == XMLStreamConstants.START_ELEMENT);
    // and should have closing </mc> at this point
    if (!"mc".equals(parser.getLocalName())) {
        throw new IllegalStateException("Expected closing </mc>, got </" + parser.getLocalName() + ">");
    }
    return new MediaContent(media, images);
}
Also used : Media(data.media.Media) ArrayList(java.util.ArrayList) MediaContent(data.media.MediaContent) Image(data.media.Image)

Example 5 with Media

use of data.media.Media in project fastjson by alibaba.

the class MediaSerializer method write.

public void write(JSONSerializer serializer, Object object, Object fieldName, Type fieldType, int features) throws IOException {
    Media media = (Media) object;
    SerializeWriter out = serializer.getWriter();
    out.write('[');
    out.writeInt(media.getBitrate());
    out.write(',');
    out.writeInt(media.getHeight());
    out.write(',');
    out.writeInt(media.getWidth());
    out.write(',');
    out.writeString(media.getCopyright(), ',');
    out.writeLong(media.getDuration());
    out.write(',');
    out.writeString(media.getFormat(), ',');
    out.write('[');
    for (int i = 0; i < media.getPersons().size(); ++i) {
        if (i != 0) {
            out.write(',');
        }
        out.writeString(media.getPersons().get(i));
    }
    out.write("],");
    out.writeString(media.getPlayer().name(), ',');
    out.writeLong(media.getSize());
    out.write(',');
    out.writeString(media.getTitle(), ',');
    out.writeString(media.getUri(), ']');
}
Also used : SerializeWriter(com.alibaba.fastjson.serializer.SerializeWriter) Media(data.media.Media)

Aggregations

Media (data.media.Media)8 ArrayList (java.util.ArrayList)5 JSONLexer (com.alibaba.fastjson.parser.JSONLexer)2 Image (data.media.Image)2 MediaContent (data.media.MediaContent)2 JSONException (com.alibaba.fastjson.JSONException)1 SerializeWriter (com.alibaba.fastjson.serializer.SerializeWriter)1 JsonNode (com.fasterxml.jackson.databind.JsonNode)1 ArrayNode (com.fasterxml.jackson.databind.node.ArrayNode)1