001package com.dpillay.tools.tail4j.model; 002 003public class TailContents<T> { 004 private T contents = null; 005 private long size = 0; 006 007 public T getContents() { 008 return contents; 009 } 010 011 public long getSize() { 012 return size; 013 } 014 015 public TailContents(T contents, long size) { 016 super(); 017 this.contents = contents; 018 this.size = size; 019 } 020 021 @Override 022 public int hashCode() { 023 final int prime = 31; 024 int result = 1; 025 result = prime * result 026 + ((contents == null) ? 0 : contents.hashCode()); 027 result = prime * result + (int) (size ^ (size >>> 32)); 028 return result; 029 } 030 031 @SuppressWarnings("unchecked") 032 @Override 033 public boolean equals(Object obj) { 034 if (this == obj) 035 return true; 036 if (obj == null) 037 return false; 038 if (getClass() != obj.getClass()) 039 return false; 040 TailContents other = (TailContents) obj; 041 if (contents == null) { 042 if (other.contents != null) 043 return false; 044 } else if (!contents.equals(other.contents)) 045 return false; 046 if (size != other.size) 047 return false; 048 return true; 049 } 050 051 @Override 052 public String toString() { 053 return "TailContents [contents=" + contents + ", size=" + size + "]"; 054 } 055}