01: /* */
02: /*
03: * <copyright>
04: *
05: * Copyright 1997-2004 BBNT Solutions, LLC
06: * under sponsorship of the Defense Advanced Research Projects
07: * Agency (DARPA).
08: *
09: * You can redistribute this software and/or modify it under the
10: * terms of the Cougaar Open Source License as published on the
11: * Cougaar Open Source Website (www.cougaar.org).
12: *
13: * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
14: * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
15: * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
16: * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
17: * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
18: * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
19: * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
20: * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
21: * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22: * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23: * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24: *
25: * </copyright>
26: */
27:
28: package org.cougaar.glm.callback;
29:
30: import org.cougaar.glm.ldm.asset.Organization;
31: import org.cougaar.lib.callback.UTILAssetCallback;
32: import org.cougaar.lib.callback.UTILFilterCallbackListener;
33: import org.cougaar.planning.ldm.asset.Asset;
34: import org.cougaar.util.UnaryPredicate;
35: import org.cougaar.util.log.Logger;
36:
37: /**
38: * Simple extension of Asset callback that filters for
39: * everything but organizations.
40: */
41:
42: public class GLMNotOrganizationCallback extends UTILAssetCallback {
43: public GLMNotOrganizationCallback(
44: UTILFilterCallbackListener listener, Logger logger) {
45: super (listener, logger);
46: }
47:
48: protected UnaryPredicate getPredicate() {
49: return new UnaryPredicate() {
50: public boolean execute(Object o) {
51: return ((!(o instanceof Organization)) && (o instanceof Asset));
52: // return(o instanceof Asset);
53: }
54: };
55: }
56: }
|