001/** 002 * Copyright (C) 2010, FuseSource Corp. All rights reserved. 003 */ 004package org.fusesource.hawtdispatch; 005 006/** 007 * <p> 008 * </p> 009 * 010 * @author <a href="http://hiramchirino.com">Hiram Chirino</a> 011 */ 012final public class TaskWrapper extends Task { 013 014 private final Runnable runnable; 015 016 public TaskWrapper(Runnable runnable) { 017 this.runnable = runnable; 018 } 019 020 @Override 021 public void run() { 022 runnable.run(); 023 } 024 025 @Override 026 public boolean equals(Object o) { 027 if (this == o) return true; 028 if (o == null || getClass() != o.getClass()) return false; 029 TaskWrapper that = (TaskWrapper) o; 030 if (runnable != null ? !runnable.equals(that.runnable) : that.runnable != null) return false; 031 return true; 032 } 033 034 @Override 035 public int hashCode() { 036 return runnable != null ? runnable.hashCode() : 0; 037 } 038 039 @Override 040 public String toString() { 041 return runnable.toString(); 042 } 043}