view artifacts/src/main/java/org/dive4elements/river/artifacts/model/StaticWQKmsCacheKey.java @ 8876:23264d1a528f

Allow access to staticwqkms data; also allow to acces by km range
author gernotbelger
date Thu, 08 Feb 2018 18:47:36 +0100
parents 26c7aa469bfc
children
line wrap: on
line source
/* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
 * Software engineering by Intevation GmbH
 *
 * This file is Free Software under the GNU AGPL (>=v3)
 * and comes with ABSOLUTELY NO WARRANTY! Check out the
 * documentation coming with Dive4Elements River for details.
 */

package org.dive4elements.river.artifacts.model;

import java.io.Serializable;

import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;

/**
 * Caching-Key object for 'static' wst- data.
 */
public final class StaticWQKmsCacheKey
implements         Serializable
{
    public static final String CACHE_NAME = "wst-wq-value-table-static";

    private final int column;
    
    private final int wst_id;

    private double from;

    private double to;

    private int hash;

    public StaticWQKmsCacheKey(final int column, final int wst_id, final double from, final double to) {
        this.wst_id  = wst_id;
        this.column  = column;
        this.from = from;
        this.to = to;
        this.hash = new HashCodeBuilder().append(column).append(wst_id).append(false).append(to).toHashCode();
    }

    @Override
    public int hashCode() {
        return this.hash;
    }

    @Override
    public boolean equals(final Object other) {
        
        if (other == null) 
            return false;
        if( other == this) 
            return true;
        if (other.getClass() != getClass()) {
          return false;
        }
        
        final StaticWQKmsCacheKey rhs = (StaticWQKmsCacheKey) other;
        
        return new EqualsBuilder(). //
                append(column, rhs.column). //
                append(wst_id, rhs.wst_id). //
                append(from, rhs.from). //
                append(to, rhs.to). //
                isEquals();
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org