1 /*******************************************************************************
2 * Copyright (c) 2007, 2010 Association for Decentralized Information Management
4 * All rights reserved. This program and the accompanying materials
5 * are made available under the terms of the Eclipse Public License v1.0
6 * which accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * VTT Technical Research Centre of Finland - initial API and implementation
11 *******************************************************************************/
12 package org.simantics.browsing.ui.graph.impl.contribution;
14 import org.simantics.browsing.ui.CheckedState;
15 import org.simantics.browsing.ui.NodeContext;
16 import org.simantics.browsing.ui.PrimitiveQueryUpdater;
17 import org.simantics.browsing.ui.BuiltinKeys.CheckedStateKey;
18 import org.simantics.db.procedure.Listener;
19 import org.simantics.db.procedure.Procedure;
20 import org.simantics.utils.ui.ErrorLogger;
24 * @author Antti Villberg
26 abstract public class CheckedStateContributionImpl extends FinalCheckedStateContributionImpl {
28 public CheckedStateContributionImpl(PrimitiveQueryUpdater updater,
29 NodeContext context, CheckedStateKey key) {
30 super(updater, context, key);
34 protected Procedure<CheckedState> createProcedure() {
36 return new Listener<CheckedState>() {
39 public void execute(CheckedState result) {
40 replaceResult(result);
44 public boolean isDisposed() {
45 return updater.isDisposed();
49 public void exception(Throwable t) {
50 ErrorLogger.defaultLogError("LazyContributionImpl.childQuery failed, see exception for details.", t);