X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fuk%2Fac%2Fvamsas%2Fclient%2Fsimpleclient%2FSessionFlagWatcherElement.java;h=0c87398db8c05815ab2e9a1c008a04ca6bc14418;hb=844ccad5a3fcbedec17b2af66d460f31abc7cff1;hp=8d70d9f82b6bfb5f38ff8d542b3d4433adc81278;hpb=6f33f705957d674dc2ab6c994a6ea87f7a91f40f;p=vamsas.git diff --git a/src/uk/ac/vamsas/client/simpleclient/SessionFlagWatcherElement.java b/src/uk/ac/vamsas/client/simpleclient/SessionFlagWatcherElement.java index 8d70d9f..0c87398 100644 --- a/src/uk/ac/vamsas/client/simpleclient/SessionFlagWatcherElement.java +++ b/src/uk/ac/vamsas/client/simpleclient/SessionFlagWatcherElement.java @@ -1,39 +1,69 @@ +/* + * This file is part of the Vamsas Client version 0.1. + * Copyright 2009 by Jim Procter, Iain Milne, Pierre Marguerite, + * Andrew Waterhouse and Dominik Lindner. + * + * Earlier versions have also been incorporated into Jalview version 2.4 + * since 2008, and TOPALi version 2 since 2007. + * + * The Vamsas Client is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * The Vamsas Client is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with the Vamsas Client. If not, see . + */ package uk.ac.vamsas.client.simpleclient; - /** - * Element of the VamsasFileWatcherThread event generator chain. - * Keep a reference to this element before adding it to the chain - * in order to control the generation of events with halt and enable. + * Element of the VamsasFileWatcherThread event generator chain. Keep a + * reference to this element before adding it to the chain in order to control + * the generation of events with halt and enable. * - * doWatch will do nothing if the element is not enabled. - * TODO: TEST THIS CLASS - not yet used in SimpleClient + * doWatch will do nothing if the element is not enabled. TODO: TEST THIS CLASS + * - not yet used in SimpleClient */ public class SessionFlagWatcherElement extends WatcherElement { - SessionFlagFile watched=null; + SessionFlagFile watched = null; + /** * create a new, enabled watch element - * @param watcher file being watched - * @param handler handler to call on state change + * + * @param watcher + * file being watched + * @param handler + * handler to call on state change */ - public SessionFlagWatcherElement(SessionFlagFile watcher, WatcherCallBack handler) { + public SessionFlagWatcherElement(SessionFlagFile watcher, + WatcherCallBack handler) { this(watcher, handler, true); } + protected void initWatch() { - if (watched==null) + if (watched == null) return; watcher = new FileWatcher(watched.flagFile); } + protected void endWatch() { // leaves watcher in state its in. } + /** * new watcher with flag to initially skip watching this sessionfile + * * @param watcher * @param handler * @param enableWatching */ - public SessionFlagWatcherElement(SessionFlagFile watcher, WatcherCallBack handler, boolean enableWatching) { + public SessionFlagWatcherElement(SessionFlagFile watcher, + WatcherCallBack handler, boolean enableWatching) { super(handler); this.watched = watcher; if (enableWatching) @@ -41,14 +71,16 @@ public class SessionFlagWatcherElement extends WatcherElement { else haltWatch(); } + /** * @return the watched */ public SessionFlagFile getWatched() { return watched; } + protected String getSubject() { - + return watched.flagFile.toString(); } }