@FromJson HttpUrl urlFromJson(String urlString) { if (urlString.startsWith("wss:")) urlString = "https:" + urlString.substring(4); if (urlString.startsWith("ws:")) urlString = "http:" + urlString.substring(3); return HttpUrl.get(urlString); } }
@FromJson Event eventFromJson(EventJson eventJson) { Event event = new Event(); event.title = eventJson.title; event.beginDateAndTime = eventJson.begin_date + " " + eventJson.begin_time; return event; }
@FromJson @HexColor int fromJson(String rgb) { return Integer.parseInt(rgb.substring(1), 16); } }
@FromJson @Nullable Stage fromJson(JsonReader jsonReader, JsonAdapter<Stage> delegate) throws IOException { String value = jsonReader.nextString(); Stage stage; if (value.startsWith("in-progress")) { stage = Stage.IN_PROGRESS; } else { stage = delegate.fromJsonValue(value); } return stage; } }
@FromJson Card fromJson(String card) { if (card.length() != 2) throw new JsonDataException("Unknown card: " + card); char rank = card.charAt(0); switch (card.charAt(1)) { case 'C': return new Card(rank, Suit.CLUBS); case 'D': return new Card(rank, Suit.DIAMONDS); case 'H': return new Card(rank, Suit.HEARTS); case 'S': return new Card(rank, Suit.SPADES); default: throw new JsonDataException("unknown suit: " + card); } } }
@FromJson @CardString Card fromJson(String card) { if (card.length() != 2) throw new JsonDataException("Unknown card: " + card); char rank = card.charAt(0); switch (card.charAt(1)) { case 'C': return new Card(rank, Suit.CLUBS); case 'D': return new Card(rank, Suit.DIAMONDS); case 'H': return new Card(rank, Suit.HEARTS); case 'S': return new Card(rank, Suit.SPADES); default: throw new JsonDataException("unknown suit: " + card); } } }
@FromJson Card fromJson(JsonReader reader, @CardString JsonAdapter<Card> stringAdapter, JsonAdapter<Card> defaultAdapter) throws IOException { if (reader.peek() == JsonReader.Token.STRING) { return stringAdapter.fromJson(reader); } else { return defaultAdapter.fromJson(reader); } } }
@FromJson BigInteger fromJson(final String bigInteger) { return new BigInteger(bigInteger); } }
@FromJson BigDecimal fromJson(final String bigDecimal) { return new BigDecimal(bigDecimal); } }
@FromJson public BigDecimal bigDecimalFromString(@Nullable Float value) { return value != null ? new BigDecimal(value.toString()) : null; } }
@FromJson public BigDecimal bigDecimalFromString(@Nullable Float value) { return value != null ? new BigDecimal(value.toString()) : null; } }
@FromJson @OAuthScopes Set<Scope> fromJson(String scopes) { return Scope.parseScopes(scopes); }
@FromJson @OAuthScopes Set<Scope> fromJson(String scopes) { return Scope.parseScopes(scopes); }
@FromJson Throws fromJson(String str) throws IOException { throw new IOException("ThrowingAdapter.fromJson"); }
@Multiply @FromJson int fromJson(int val) { return val * 2; }
@Custom @FromJson String fromJson(String str) { return str + "Custom"; }