01: /*
02: (c) Copyright 2003, 2004, 2005, 2006, 2007, 2008 Hewlett-Packard Development Company, LP
03: [See end of file]
04: $Id: GraphAddList.java,v 1.7 2008/01/02 12:05:17 andy_seaborne Exp $
05: */
06:
07: package com.hp.hpl.jena.graph.impl;
08:
09: import java.util.ArrayList;
10:
11: import com.hp.hpl.jena.graph.*;
12:
13: /**
14: A List that implements the GraphAdd interface, so that it can be passed
15: to things that want to add triples to Graphs. The triples are filtered.
16: */
17:
18: public class GraphAddList extends ArrayList implements GraphAdd {
19: protected Triple match;
20:
21: /**
22: Initialise a GraphAddList with a triple [pattern] that specifies what triples
23: will be accepted into the list.
24: */
25: public GraphAddList(Triple match) {
26: this .match = match;
27: }
28:
29: /**
30: Add the triple <code>t</code> to this list if it is matched by the pattern.
31: */
32: public void add(Triple t) {
33: if (match.matches(t))
34: super .add(t);
35: }
36: }
37:
38: /*
39: (c) Copyright 2003, 2004, 2005, 2006, 2007, 2008 Hewlett-Packard Development Company, LP
40: All rights reserved.
41:
42: Redistribution and use in source and binary forms, with or without
43: modification, are permitted provided that the following conditions
44: are met:
45:
46: 1. Redistributions of source code must retain the above copyright
47: notice, this list of conditions and the following disclaimer.
48:
49: 2. Redistributions in binary form must reproduce the above copyright
50: notice, this list of conditions and the following disclaimer in the
51: documentation and/or other materials provided with the distribution.
52:
53: 3. The name of the author may not be used to endorse or promote products
54: derived from this software without specific prior written permission.
55:
56: THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
57: IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
58: OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
59: IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
60: INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
61: NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
62: DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
63: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
64: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
65: THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
66: */
|