Skip to content

Instantly share code, notes, and snippets.

@gakuzzzz
Forked from nakamura-to/Era.java
Last active May 28, 2016 07:35
Show Gist options
  • Save gakuzzzz/21c68758cba47c26e6791bbc1073fc83 to your computer and use it in GitHub Desktop.
Save gakuzzzz/21c68758cba47c26e6791bbc1073fc83 to your computer and use it in GitHub Desktop.
Doma external embeddable
@Entity
public class Era {
@Id
public Integer id;
public String name;
public Interval interval;
}
create table era {
id integer primary key,
name varchar(100),
start bigint,
end bigint,
}
@Embeddable(factoryMethod = "to", extractMethod = "from")
public class IntervalAdapter {
private final long start;
private final long end;
public IntervalAdapter(long start, long end) {
this.start = start;
this.end = end;
}
public Interval to() {
return new Interval(start, end);
}
public static IntervalAdapter from(Interval interval) {
return new IntervalAdapter(interval.getStartMillis(), interval.getEndMillis());
}
// getter, setter
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment