nl.vpro.domain.gtaa.AbstractGTAAObject Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gtaa-domain Show documentation
Show all versions of gtaa-domain Show documentation
Contains java bindings for the objects served out by Openskos/GTAA
/*
* Copyright (C) 2015 Licensed under the Apache License, Version 2.0
* VPRO The Netherlands
*/
package nl.vpro.domain.gtaa;
import lombok.Data;
import java.net.URI;
import java.util.UUID;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlAttribute;
import nl.vpro.openarchives.oai.Namespaces;
/**
* @author Roelof Jan Koekoek
* @since 3.7
*/
@XmlAccessorType(XmlAccessType.NONE)
@Data
public abstract class AbstractGTAAObject {
private UUID uuid;
@XmlAttribute(name = "about", namespace = Namespaces.RDF)
private URI about;
protected AbstractGTAAObject() {
}
protected AbstractGTAAObject(UUID uuid, URI about) {
this.uuid = uuid;
this.about = about;
}
protected static class AbstractBuilder> {
UUID uuid;
URI about;
public T uuid(UUID uuid) {
this.uuid = uuid;
return (T) this;
}
public T about(URI a) {
this.about = a;
return (T) this;
}
}
}