View Javadoc

1   package org.molwind.model;
2   
3   /*
4    * This file is part of Molwind.
5    *
6    * Molwind is free software: you can redistribute it and/or modify
7    * it under the terms of the GNU General Public License as published by
8    * the Free Software Foundation, either version 3 of the License, or
9    * (at your option) any later version.
10   *
11   * Molwind is distributed in the hope that it will be useful,
12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14   * GNU General Public License for more details.
15   *
16   * You should have received a copy of the GNU General Public License
17   * along with Molwind. If not, see <http://www.gnu.org/licenses/>.
18   */
19  
20  /**
21   * PartOf relationship type.
22   *
23   * @author <a href="mailto:oliver.karch@molwind.org">Oliver Karch</a>
24   * @version 1.0
25   */
26  public class PartOf extends BaseRelationship {
27  
28      /**
29       * Creates a new partof relationship object.
30       *
31       * @param left
32       *      left argument world entity
33       * @param right
34       *      right argument world entity
35       */
36      public PartOf(final WorldEntity left, final WorldEntity right) {
37          super(left, right);
38      }
39  
40      /**
41       * Tests whether the given entity has a part of relationship.
42       *
43       * @param part
44       *      the given entity
45       * @return
46       *      true if relationship type is transitive, otherwise false
47       */
48      public boolean contains(final WorldEntity part) {
49          if (part == null) {
50              return false;
51          }
52  
53          WorldEntity entity = getLeft();
54          return part.equals(entity);
55      }
56  
57  }