Skip to content

Method: inferred(boolean)

1: package cz.cvut.kbss.jopa.model.metamodel;
2:
3: import cz.cvut.kbss.jopa.model.IRI;
4: import cz.cvut.kbss.jopa.model.annotations.SequenceType;
5: import cz.cvut.kbss.jopa.oom.converter.ConverterWrapper;
6: import cz.cvut.kbss.jopa.vocabulary.RDF;
7:
8: import java.util.List;
9:
10: public class RDFCollectionAttribute<X, V> extends ListAttributeImpl<X, V> {
11:
12: RDFCollectionAttribute(RDFCollectionAttributeBuilder<X, V> builder) {
13: super(builder);
14: }
15:
16: @Override
17: public boolean isRDFCollection() {
18: return true;
19: }
20:
21: @Override
22: public String toString() {
23: return "RDFCollectionAttribute[" + getName() + "]";
24: }
25:
26: static RDFCollectionAttributeBuilder builder(PropertyAttributes config) {
27: return new RDFCollectionAttributeBuilder().collectionType(List.class).config(config);
28: }
29:
30: static class RDFCollectionAttributeBuilder<X, V> extends ListAttributeBuilder<X, V> {
31:
32: RDFCollectionAttributeBuilder() {
33: owlListClass(IRI.create(RDF.LIST));
34: hasNextProperty(IRI.create(RDF.REST));
35: hasContentsProperty(IRI.create(RDF.FIRST));
36: sequenceType(SequenceType.referenced);
37: }
38:
39: @Override
40: public RDFCollectionAttributeBuilder<X, V> config(PropertyAttributes config) {
41: super.config(config);
42: return this;
43: }
44:
45: @Override
46: public RDFCollectionAttributeBuilder<X, V> collectionType(Class<List<V>> collectionType) {
47: super.collectionType(collectionType);
48: return this;
49: }
50:
51: @Override
52: public RDFCollectionAttributeBuilder<X, V> elementType(Type<V> elementType) {
53: super.elementType(elementType);
54: return this;
55: }
56:
57: @Override
58: public RDFCollectionAttributeBuilder<X, V> propertyInfo(PropertyInfo propertyInfo) {
59: super.propertyInfo(propertyInfo);
60: return this;
61: }
62:
63: @Override
64: public RDFCollectionAttributeBuilder<X, V> declaringType(ManagedType<X> declaringType) {
65: super.declaringType(declaringType);
66: return this;
67: }
68:
69: @Override
70: public RDFCollectionAttributeBuilder<X, V> inferred(boolean inferred) {
71: super.inferred(inferred);
72: return this;
73: }
74:
75: @Override
76: public RDFCollectionAttributeBuilder<X, V> includeExplicit(boolean includeExplicit) {
77: super.includeExplicit(includeExplicit);
78: return this;
79: }
80:
81: @Override
82: public RDFCollectionAttributeBuilder<X, V> converter(ConverterWrapper converter) {
83: super.converter(converter);
84: return this;
85: }
86:
87: @Override
88: public RDFCollectionAttribute<X, V> build() {
89: return new RDFCollectionAttribute<>(this);
90: }
91: }
92: }