1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package ubic.basecode.ontology.jena;
20
21 import com.hp.hpl.jena.ontology.Restriction;
22 import ubic.basecode.ontology.model.OntologyCardinalityRestriction;
23
24 import java.util.Set;
25
26
27
28
29 class OntologyCardinalityRestrictionImpl extends OntologyRestrictionImpl implements
30 OntologyCardinalityRestriction {
31
32 private final int cardinality;
33 private final CardinalityType cardType;
34
35 public OntologyCardinalityRestrictionImpl( Restriction resource, Set<Restriction> additionalRestrictions ) {
36 super( resource, additionalRestrictions );
37
38 if ( resource.isMaxCardinalityRestriction() ) {
39 this.cardType = CardinalityType.MAX_CARDINALITY;
40 this.cardinality = resource.asMaxCardinalityRestriction().getMaxCardinality();
41 } else if ( resource.isMinCardinalityRestriction() ) {
42 this.cardType = CardinalityType.MIN_CARDINALITY;
43 this.cardinality = resource.asMinCardinalityRestriction().getMinCardinality();
44 } else if ( resource.isCardinalityRestriction() ) {
45 this.cardType = CardinalityType.CARDINALITY;
46 this.cardinality = resource.asCardinalityRestriction().getCardinality();
47 } else {
48 throw new IllegalArgumentException( "Must pass in a cardinality restriction" );
49 }
50
51 }
52
53 @Override
54 public int getCardinality() {
55 return cardinality;
56 }
57
58 @Override
59 public CardinalityType getCardinalityType() {
60 return cardType;
61 }
62
63 @Override
64 public String toString() {
65 return " cardinality restriction: " + cardType + " " + this.getCardinality();
66 }
67
68 }