Skip to content

Instantly share code, notes, and snippets.

View davidtcdeveloper's full-sized avatar

David Tiago Conceição davidtcdeveloper

  • Microsoft
  • Florianópolis, SC
View GitHub Profile
@davidtcdeveloper
davidtcdeveloper / 1. Project build.gradle
Last active May 26, 2016 18:52
Configuring android APT plugin in gradle.
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
@davidtcdeveloper
davidtcdeveloper / Module build.gradle
Last active February 26, 2017 19:02
Set up AutoValue dependency
provided 'com.google.auto.value:auto-value:1.2'
annotationProcessor 'com.google.auto.value:auto-value:1.2'
@davidtcdeveloper
davidtcdeveloper / PersonData.java
Last active May 28, 2016 17:26
Person data without AutoValue.
public class PersonData {
private final long id;
private final String name;
private final int status;
private final String eMail;
private final String profileUrl;
private final String pictureImageUrl;
public PersonData(long id, String name, int status, String eMail, String profileUrl, String pictureImageUrl) {
@davidtcdeveloper
davidtcdeveloper / PersonData.java
Last active May 28, 2016 17:28
Person data with AutoValue, initial setup.
import com.google.auto.value.AutoValue;
@AutoValue
public abstract class PersonData {
abstract long id();
abstract String name();
abstract int status();
abstract String eMail();
abstract String profileUrl();
abstract String pictureImageUrl();
@davidtcdeveloper
davidtcdeveloper / AutoValue_PersonData.java
Last active May 28, 2016 17:28
AutoValue generated class.
final class AutoValue_PersonData extends PersonData {
private final long id;
private final String name;
private final int status;
private final String eMail;
private final String profileUrl;
private final String pictureImageUrl;
AutoValue_PersonData(
@davidtcdeveloper
davidtcdeveloper / PersonData.java
Last active May 28, 2016 17:30
Create method.
public static PersonData create(long id, String name, int status, String eMail,String profileUrl, String pictureImageUrl) {
return new AutoValue_PersonData(id, name, status, eMail, profileUrl, pictureImageUrl);
}
@davidtcdeveloper
davidtcdeveloper / PersonData.java
Created May 26, 2016 19:19
Creating a builder with AutoValue.
@AutoValue.Builder
abstract static class Builder {
abstract Builder id(long value);
abstract Builder name(String value);
abstract Builder status(int value);
abstract Builder eMail(String value);
abstract Builder profileUrl(String value);
abstract Builder pictureImageUrl(String value);
abstract PersonData build();
}
@davidtcdeveloper
davidtcdeveloper / PersonData.java
Created May 26, 2016 19:19
Replacing create with builder.
static Builder builder() {
return new AutoValue_PersonData.Builder();
}
@davidtcdeveloper
davidtcdeveloper / AutoValue_PersonData.java
Last active May 28, 2016 17:31
Null checks in generated class.
if (pictureImageUrl == null) {
throw new NullPointerException("Null pictureImageUrl");
}
@davidtcdeveloper
davidtcdeveloper / 1. PersonData.java
Last active May 29, 2016 18:15
Setting up a nullable field.
@Nullable
abstract String pictureImageUrl();