Example usage for com.google.gson.stream JsonReader beginObject

List of usage examples for com.google.gson.stream JsonReader beginObject

Introduction

In this page you can find the example usage for com.google.gson.stream JsonReader beginObject.

Prototype

public void beginObject() throws IOException 

Source Link

Document

Consumes the next token from the JSON stream and asserts that it is the beginning of a new object.

Usage

From source file:com.vimeo.stag.generated.ParseUtils.java

public static VideoFile parseVideoFile(Gson gson, JsonReader reader) throws IOException {
    if (reader.peek() == com.google.gson.stream.JsonToken.NULL) {
        reader.nextNull();/*from  w  w  w.  j  ava 2s  . c  o m*/
        return null;
    }
    if (reader.peek() != com.google.gson.stream.JsonToken.BEGIN_OBJECT) {
        reader.skipValue();
        return null;
    }
    reader.beginObject();

    com.vimeo.networking.model.VideoFile object = new com.vimeo.networking.model.VideoFile();
    while (reader.hasNext()) {
        String name = reader.nextName();
        com.google.gson.stream.JsonToken jsonToken = reader.peek();
        if (jsonToken == com.google.gson.stream.JsonToken.NULL) {
            reader.skipValue();
            continue;
        }
        switch (name) {
        case "token":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.token = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "size":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.size = reader.nextLong();
            } else {
                reader.skipValue();
            }
            break;
        case "link_expiration_time":
            try {
                object.linkExpirationTime = Stag.readFromAdapter(gson, java.util.Date.class, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing VideoFile.linkExpirationTime JSON!", exception);
            }
            break;
        case "fps":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.fps = reader.nextDouble();
            } else {
                reader.skipValue();
            }
            break;
        case "height":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.height = reader.nextInt();
            } else {
                reader.skipValue();
            }
            break;
        case "quality":
            try {
                object.quality = Stag.readFromAdapter(gson,
                        com.vimeo.networking.model.VideoFile.VideoQuality.class, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing VideoFile.quality JSON!", exception);
            }
            break;
        case "link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.link = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "license_link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.licenseLink = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "width":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.width = reader.nextInt();
            } else {
                reader.skipValue();
            }
            break;
        case "md5":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.md5 = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "log":
            try {
                object.log = ParseUtils.parseVideoLog(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing VideoFile.log JSON!", exception);
            }
            break;
        case "created_time":
            try {
                object.createdTime = Stag.readFromAdapter(gson, java.util.Date.class, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing VideoFile.createdTime JSON!", exception);
            }
            break;
        case "type":
            try {
                object.type = Stag.readFromAdapter(gson, com.vimeo.networking.model.VideoFile.MimeType.class,
                        reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing VideoFile.type JSON!", exception);
            }
            break;
        case "expires":
            try {
                object.expires = Stag.readFromAdapter(gson, java.util.Date.class, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing VideoFile.expires JSON!", exception);
            }
            break;
        default:
            reader.skipValue();
            break;
        }
    }

    reader.endObject();
    return object;
}

From source file:com.vimeo.stag.generated.ParseUtils.java

public static Space parseSpace(Gson gson, JsonReader reader) throws IOException {
    if (reader.peek() == com.google.gson.stream.JsonToken.NULL) {
        reader.nextNull();//from ww  w  . j  a  v  a2 s .c o  m
        return null;
    }
    if (reader.peek() != com.google.gson.stream.JsonToken.BEGIN_OBJECT) {
        reader.skipValue();
        return null;
    }
    reader.beginObject();

    com.vimeo.networking.model.Space object = new com.vimeo.networking.model.Space();
    while (reader.hasNext()) {
        String name = reader.nextName();
        com.google.gson.stream.JsonToken jsonToken = reader.peek();
        if (jsonToken == com.google.gson.stream.JsonToken.NULL) {
            reader.skipValue();
            continue;
        }
        switch (name) {
        case "free":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.free = reader.nextLong();
            } else {
                reader.skipValue();
            }
            break;
        case "used":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.used = reader.nextLong();
            } else {
                reader.skipValue();
            }
            break;
        case "max":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.max = reader.nextLong();
            } else {
                reader.skipValue();
            }
            break;
        default:
            reader.skipValue();
            break;
        }
    }

    reader.endObject();
    return object;
}

From source file:com.vimeo.stag.generated.ParseUtils.java

public static VideoLog parseVideoLog(Gson gson, JsonReader reader) throws IOException {
    if (reader.peek() == com.google.gson.stream.JsonToken.NULL) {
        reader.nextNull();/*  w  ww. j av  a  2  s.c  o m*/
        return null;
    }
    if (reader.peek() != com.google.gson.stream.JsonToken.BEGIN_OBJECT) {
        reader.skipValue();
        return null;
    }
    reader.beginObject();

    com.vimeo.networking.model.playback.VideoLog object = new com.vimeo.networking.model.playback.VideoLog();
    while (reader.hasNext()) {
        String name = reader.nextName();
        com.google.gson.stream.JsonToken jsonToken = reader.peek();
        if (jsonToken == com.google.gson.stream.JsonToken.NULL) {
            reader.skipValue();
            continue;
        }
        switch (name) {
        case "like_press_link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.mLikePressLink = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "load_link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.mLoadLink = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "exit_link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.mExitLink = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "play_link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.mPlayLink = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "watchlater_press_link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.mWatchLaterPressLink = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        default:
            reader.skipValue();
            break;
        }
    }

    reader.endObject();
    return object;
}

From source file:com.vimeo.stag.generated.ParseUtils.java

public static User parseUser(Gson gson, JsonReader reader) throws IOException {
    if (reader.peek() == com.google.gson.stream.JsonToken.NULL) {
        reader.nextNull();//from w ww .  jav  a2  s .co m
        return null;
    }
    if (reader.peek() != com.google.gson.stream.JsonToken.BEGIN_OBJECT) {
        reader.skipValue();
        return null;
    }
    reader.beginObject();

    com.vimeo.networking.model.User object = new com.vimeo.networking.model.User();
    while (reader.hasNext()) {
        String name = reader.nextName();
        com.google.gson.stream.JsonToken jsonToken = reader.peek();
        if (jsonToken == com.google.gson.stream.JsonToken.NULL) {
            reader.skipValue();
            continue;
        }
        switch (name) {
        case "name":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.name = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "bio":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.bio = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "uri":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.uri = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "metadata":
            try {
                object.metadata = ParseUtils.parseMetadata(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing User.metadata JSON!", exception);
            }
            break;
        case "emails":
            if (jsonToken == com.google.gson.stream.JsonToken.BEGIN_ARRAY) {
                object.emails = ParseUtils.parseArray(gson, reader, com.vimeo.networking.model.Email.class);
            } else {
                reader.skipValue();
            }
            break;
        case "pictures":
            try {
                object.pictures = ParseUtils.parsePictureCollection(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing User.pictures JSON!", exception);
            }
            break;
        case "upload_quota":
            try {
                object.uploadQuota = ParseUtils.parseUploadQuota(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing User.uploadQuota JSON!", exception);
            }
            break;
        case "link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.link = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "created_time":
            try {
                object.createdTime = Stag.readFromAdapter(gson, java.util.Date.class, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing User.createdTime JSON!", exception);
            }
            break;
        case "account":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.account = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "preferences":
            try {
                object.preferences = ParseUtils.parsePreferences(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing User.preferences JSON!", exception);
            }
            break;
        case "location":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.location = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "websites":
            if (jsonToken == com.google.gson.stream.JsonToken.BEGIN_ARRAY) {
                object.websites = ParseUtils.parseArray(gson, reader, com.vimeo.networking.model.Website.class);
            } else {
                reader.skipValue();
            }
            break;
        case "badge":
            try {
                object.badge = ParseUtils.parseUserBadge(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing User.badge JSON!", exception);
            }
            break;
        default:
            reader.skipValue();
            break;
        }
    }

    reader.endObject();
    return object;
}

From source file:com.vimeo.stag.generated.ParseUtils.java

public static FacetOption parseFacetOption(Gson gson, JsonReader reader) throws IOException {
    if (reader.peek() == com.google.gson.stream.JsonToken.NULL) {
        reader.nextNull();//from  ww  w.ja va 2 s  . c  o m
        return null;
    }
    if (reader.peek() != com.google.gson.stream.JsonToken.BEGIN_OBJECT) {
        reader.skipValue();
        return null;
    }
    reader.beginObject();

    com.vimeo.networking.model.search.FacetOption object = new com.vimeo.networking.model.search.FacetOption();
    while (reader.hasNext()) {
        String name = reader.nextName();
        com.google.gson.stream.JsonToken jsonToken = reader.peek();
        if (jsonToken == com.google.gson.stream.JsonToken.NULL) {
            reader.skipValue();
            continue;
        }
        switch (name) {
        case "total":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.mTotal = reader.nextInt();
            } else {
                reader.skipValue();
            }
            break;
        case "text":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.mText = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "name":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.mName = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        default:
            reader.skipValue();
            break;
        }
    }

    reader.endObject();
    return object;
}

From source file:com.vimeo.stag.generated.ParseUtils.java

public static Category parseCategory(Gson gson, JsonReader reader) throws IOException {
    if (reader.peek() == com.google.gson.stream.JsonToken.NULL) {
        reader.nextNull();/*from w ww.java 2 s  . c o m*/
        return null;
    }
    if (reader.peek() != com.google.gson.stream.JsonToken.BEGIN_OBJECT) {
        reader.skipValue();
        return null;
    }
    reader.beginObject();

    com.vimeo.networking.model.Category object = new com.vimeo.networking.model.Category();
    while (reader.hasNext()) {
        String name = reader.nextName();
        com.google.gson.stream.JsonToken jsonToken = reader.peek();
        if (jsonToken == com.google.gson.stream.JsonToken.NULL) {
            reader.skipValue();
            continue;
        }
        switch (name) {
        case "name":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.name = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "uri":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.uri = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "metadata":
            try {
                object.metadata = ParseUtils.parseMetadata(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Category.metadata JSON!", exception);
            }
            break;
        case "pictures":
            try {
                object.pictures = ParseUtils.parsePictureCollection(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Category.pictures JSON!", exception);
            }
            break;
        case "top_level":
            if (jsonToken == com.google.gson.stream.JsonToken.BOOLEAN) {
                object.topLevel = reader.nextBoolean();
            } else {
                reader.skipValue();
            }
            break;
        case "subcategories":
            if (jsonToken == com.google.gson.stream.JsonToken.BEGIN_ARRAY) {
                object.subcategories = ParseUtils.parseArray(gson, reader,
                        com.vimeo.networking.model.Category.class);
            } else {
                reader.skipValue();
            }
            break;
        case "parent":
            try {
                object.parent = ParseUtils.parseCategory(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Category.parent JSON!", exception);
            }
            break;
        case "link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.link = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        default:
            reader.skipValue();
            break;
        }
    }

    reader.endObject();
    return object;
}

From source file:com.vimeo.stag.generated.ParseUtils.java

public static VodList parseVodList(Gson gson, JsonReader reader) throws IOException {
    if (reader.peek() == com.google.gson.stream.JsonToken.NULL) {
        reader.nextNull();/*from w w  w . ja v a2 s. co m*/
        return null;
    }
    if (reader.peek() != com.google.gson.stream.JsonToken.BEGIN_OBJECT) {
        reader.skipValue();
        return null;
    }
    reader.beginObject();

    com.vimeo.networking.model.VodList object = new com.vimeo.networking.model.VodList();
    while (reader.hasNext()) {
        String name = reader.nextName();
        com.google.gson.stream.JsonToken jsonToken = reader.peek();
        if (jsonToken == com.google.gson.stream.JsonToken.NULL) {
            reader.skipValue();
            continue;
        }
        switch (name) {
        case "total":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.total = reader.nextInt();
            } else {
                reader.skipValue();
            }
            break;
        case "per_page":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.perPage = reader.nextInt();
            } else {
                reader.skipValue();
            }
            break;
        case "page":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.page = reader.nextInt();
            } else {
                reader.skipValue();
            }
            break;
        case "data":
            if (jsonToken == com.google.gson.stream.JsonToken.BEGIN_ARRAY) {
                object.data = ParseUtils.parseArray(gson, reader, com.vimeo.networking.model.VodItem.class);
            } else {
                reader.skipValue();
            }
            break;
        case "paging":
            try {
                object.paging = ParseUtils.parsePaging(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing VodList.paging JSON!", exception);
            }
            break;
        default:
            reader.skipValue();
            break;
        }
    }

    reader.endObject();
    return object;
}

From source file:com.vimeo.stag.generated.ParseUtils.java

public static InteractionCollection parseInteractionCollection(Gson gson, JsonReader reader)
        throws IOException {
    if (reader.peek() == com.google.gson.stream.JsonToken.NULL) {
        reader.nextNull();//from   w ww  .j  a v  a 2  s. c  o  m
        return null;
    }
    if (reader.peek() != com.google.gson.stream.JsonToken.BEGIN_OBJECT) {
        reader.skipValue();
        return null;
    }
    reader.beginObject();

    com.vimeo.networking.model.InteractionCollection object = new com.vimeo.networking.model.InteractionCollection();
    while (reader.hasNext()) {
        String name = reader.nextName();
        com.google.gson.stream.JsonToken jsonToken = reader.peek();
        if (jsonToken == com.google.gson.stream.JsonToken.NULL) {
            reader.skipValue();
            continue;
        }
        switch (name) {
        case "rent":
            try {
                object.rent = ParseUtils.parseInteraction(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing InteractionCollection.rent JSON!", exception);
            }
            break;
        case "watchlater":
            try {
                object.watchlater = ParseUtils.parseInteraction(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing InteractionCollection.watchlater JSON!", exception);
            }
            break;
        case "follow":
            try {
                object.follow = ParseUtils.parseInteraction(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing InteractionCollection.follow JSON!", exception);
            }
            break;
        case "like":
            try {
                object.like = ParseUtils.parseInteraction(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing InteractionCollection.like JSON!", exception);
            }
            break;
        case "buy":
            try {
                object.buy = ParseUtils.parseInteraction(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing InteractionCollection.buy JSON!", exception);
            }
            break;
        case "subscribe":
            try {
                object.subscribe = ParseUtils.parseInteraction(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing InteractionCollection.subscribe JSON!", exception);
            }
            break;
        default:
            reader.skipValue();
            break;
        }
    }

    reader.endObject();
    return object;
}

From source file:com.vimeo.stag.generated.ParseUtils.java

public static Interaction parseInteraction(Gson gson, JsonReader reader) throws IOException {
    if (reader.peek() == com.google.gson.stream.JsonToken.NULL) {
        reader.nextNull();//from   www  .  ja  v  a  2  s.  c  o m
        return null;
    }
    if (reader.peek() != com.google.gson.stream.JsonToken.BEGIN_OBJECT) {
        reader.skipValue();
        return null;
    }
    reader.beginObject();

    com.vimeo.networking.model.Interaction object = new com.vimeo.networking.model.Interaction();
    while (reader.hasNext()) {
        String name = reader.nextName();
        com.google.gson.stream.JsonToken jsonToken = reader.peek();
        if (jsonToken == com.google.gson.stream.JsonToken.NULL) {
            reader.skipValue();
            continue;
        }
        switch (name) {
        case "added":
            if (jsonToken == com.google.gson.stream.JsonToken.BOOLEAN) {
                object.added = reader.nextBoolean();
            } else {
                reader.skipValue();
            }
            break;
        case "added_time":
            try {
                object.addedTime = Stag.readFromAdapter(gson, java.util.Date.class, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Interaction.addedTime JSON!", exception);
            }
            break;
        case "expires_time":
            try {
                object.expiration = Stag.readFromAdapter(gson, java.util.Date.class, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Interaction.expiration JSON!", exception);
            }
            break;
        case "uri":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.uri = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "stream":
            try {
                object.stream = Stag.readFromAdapter(gson, com.vimeo.networking.model.Interaction.Stream.class,
                        reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Interaction.stream JSON!", exception);
            }
            break;
        default:
            reader.skipValue();
            break;
        }
    }

    reader.endObject();
    return object;
}

From source file:com.vimeo.stag.generated.ParseUtils.java

public static Video parseVideo(Gson gson, JsonReader reader) throws IOException {
    if (reader.peek() == com.google.gson.stream.JsonToken.NULL) {
        reader.nextNull();//from   w  ww. j a  v  a  2  s .c  o m
        return null;
    }
    if (reader.peek() != com.google.gson.stream.JsonToken.BEGIN_OBJECT) {
        reader.skipValue();
        return null;
    }
    reader.beginObject();

    com.vimeo.networking.model.Video object = new com.vimeo.networking.model.Video();
    while (reader.hasNext()) {
        String name = reader.nextName();
        com.google.gson.stream.JsonToken jsonToken = reader.peek();
        if (jsonToken == com.google.gson.stream.JsonToken.NULL) {
            reader.skipValue();
            continue;
        }
        switch (name) {
        case "release_time":
            try {
                object.releaseTime = Stag.readFromAdapter(gson, java.util.Date.class, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.releaseTime JSON!", exception);
            }
            break;
        case "description":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.description = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "modified_time":
            try {
                object.modifiedTime = Stag.readFromAdapter(gson, java.util.Date.class, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.modifiedTime JSON!", exception);
            }
            break;
        case "content_rating":
            if (jsonToken == com.google.gson.stream.JsonToken.BEGIN_ARRAY) {
                object.contentRating = ParseUtils.parseArray(gson, reader, java.lang.String.class);
            } else {
                reader.skipValue();
            }
            break;
        case "license":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.license = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "tags":
            if (jsonToken == com.google.gson.stream.JsonToken.BEGIN_ARRAY) {
                object.tags = ParseUtils.parseArray(gson, reader, com.vimeo.networking.model.Tag.class);
            } else {
                reader.skipValue();
            }
            break;
        case "review_link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.reviewLink = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "height":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.height = reader.nextInt();
            } else {
                reader.skipValue();
            }
            break;
        case "files":
            if (jsonToken == com.google.gson.stream.JsonToken.BEGIN_ARRAY) {
                object.files = ParseUtils.parseArray(gson, reader, com.vimeo.networking.model.VideoFile.class);
            } else {
                reader.skipValue();
            }
            break;
        case "link":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.link = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "stats":
            try {
                object.stats = ParseUtils.parseStatsCollection(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.stats JSON!", exception);
            }
            break;
        case "metadata":
            try {
                object.metadata = ParseUtils.parseMetadata(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.metadata JSON!", exception);
            }
            break;
        case "language":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.language = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "created_time":
            try {
                object.createdTime = Stag.readFromAdapter(gson, java.util.Date.class, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.createdTime JSON!", exception);
            }
            break;
        case "password":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.password = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "pictures":
            try {
                object.pictures = ParseUtils.parsePictureCollection(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.pictures JSON!", exception);
            }
            break;
        case "embed":
            try {
                object.embed = ParseUtils.parseEmbed(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.embed JSON!", exception);
            }
            break;
        case "status":
            try {
                object.status = Stag.readFromAdapter(gson, com.vimeo.networking.model.Video.Status.class,
                        reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.status JSON!", exception);
            }
            break;
        case "play":
            try {
                object.play = ParseUtils.parsePlay(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.play JSON!", exception);
            }
            break;
        case "duration":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.duration = reader.nextInt();
            } else {
                reader.skipValue();
            }
            break;
        case "uri":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.uri = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "resource_key":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.resourceKey = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "privacy":
            try {
                object.privacy = ParseUtils.parsePrivacy(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.privacy JSON!", exception);
            }
            break;
        case "width":
            if (jsonToken == com.google.gson.stream.JsonToken.NUMBER) {
                object.width = reader.nextInt();
            } else {
                reader.skipValue();
            }
            break;
        case "categories":
            if (jsonToken == com.google.gson.stream.JsonToken.BEGIN_ARRAY) {
                object.categories = ParseUtils.parseArray(gson, reader,
                        com.vimeo.networking.model.Category.class);
            } else {
                reader.skipValue();
            }
            break;
        case "name":
            if (jsonToken == com.google.gson.stream.JsonToken.STRING) {
                object.name = reader.nextString();
            } else {
                reader.skipValue();
            }
            break;
        case "user":
            try {
                object.user = ParseUtils.parseUser(gson, reader);
            } catch (Exception exception) {
                throw new IOException("Error parsing Video.user JSON!", exception);
            }
            break;
        case "download":
            if (jsonToken == com.google.gson.stream.JsonToken.BEGIN_ARRAY) {
                object.download = ParseUtils.parseArray(gson, reader,
                        com.vimeo.networking.model.VideoFile.class);
            } else {
                reader.skipValue();
            }
            break;
        default:
            reader.skipValue();
            break;
        }
    }

    reader.endObject();
    return object;
}