001 /* 002 * Copyright 2001-2004 The Apache Software Foundation 003 * 004 * Licensed under the Apache License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package org.apache.commons.cache.remote; 017 018 import java.io.Serializable; 019 020 /** 021 * tk. 022 * 023 * @version $Id: StoreRequest.java 155435 2005-02-26 13:17:27Z dirkv $ 024 * @author Rodney Waldhoff 025 */ 026 public class StoreRequest implements CacheRequest { 027 protected Serializable _key = null; 028 protected Serializable _val = null; 029 protected Serializable _group = null; 030 protected Long _expiry = null; 031 protected Long _cost = null; 032 033 public StoreRequest(Serializable key, Serializable val, Long expiry) { 034 this(key,val,expiry,(Long)null,(Serializable)null); 035 } 036 037 public StoreRequest(Serializable key, Serializable val, Long expiry, Long cost) { 038 this(key,val,expiry,cost,(Serializable)null); 039 } 040 041 public StoreRequest(Serializable key, Serializable val, Long expiry, Long cost, Serializable group) { 042 _key = key; 043 _val = val; 044 _expiry = expiry; 045 _cost = cost; 046 _group = group; 047 } 048 049 public Serializable getKey() { 050 return _key; 051 } 052 053 public Serializable getValue() { 054 return _val; 055 } 056 057 public Serializable getGroup() { 058 return _group; 059 } 060 061 public Long getExpiresAt() { 062 return _expiry; 063 } 064 065 public Long getCost() { 066 return _cost; 067 } 068 069 public boolean equals(StoreRequest req) { 070 return ( (null != req) 071 && (null == req.getKey() ? null == _key : _key.equals(req.getKey())) 072 && (null == req.getGroup() ? null == _group : _group.equals(req.getGroup())) 073 && (null == req.getExpiresAt() ? null == _expiry : _expiry.equals(req.getExpiresAt())) 074 && (null == req.getCost() ? null == _cost : _cost.equals(req.getCost())) 075 && (null == req.getValue() ? null == _val : _val.equals(req.getValue())) 076 ); 077 } 078 079 public int hashCode() { 080 return (null == _key ? -1 : _key.hashCode()); 081 } 082 }