2 * Copyright (c) 2014 Cable Television Laboratories, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.pcmm.concurrent.impl;
11 import java.util.concurrent.Callable;
13 import org.pcmm.concurrent.IWorker;
14 import org.slf4j.Logger;
15 import org.slf4j.LoggerFactory;
20 public class Worker implements IWorker {
22 private int waitTimer;
24 private Callable<?> task;
25 private Logger logger = LoggerFactory.getLogger(IWorker.class);
31 public Worker(Callable<?> task) {
38 * @see java.lang.Runnable#run()
44 Thread.sleep(waitTimer);
46 } catch (Throwable e) {
47 logger.error(e.getMessage());
54 * @see org.pcmm.threading.IWorker#task(java.util.concurrent.Callable)
57 public void task(Callable<?> c) {
58 logger.debug("Task added " + c);
65 * @see org.pcmm.threading.IWorker#shouldWait(int)
68 public void shouldWait(int t) {
69 logger.debug("Worker will start after :" + t + " ms");
76 * @see org.pcmm.threading.IWorker#done()
80 logger.debug("worker finished tasks");