org.zkoss.bind.impl.BindingKey Maven / Gradle / Ivy
/* BindingKey.java
Purpose:
Description:
History:
2011/12/21 Created by Dennis Chen
Copyright (C) 2011 Potix Corporation. All Rights Reserved.
*/
package org.zkoss.bind.impl;
import org.zkoss.lang.Objects;
import org.zkoss.zk.ui.Component;
/**
*
* @author dennis
* @since 6.0.0
*/
public class BindingKey implements java.io.Serializable {
private static final long serialVersionUID = 1L;
//remove the WeakReference , http://tracker.zkoss.org/browse/ZK-869
/**
* The first key.
**/
private final Component x;
/** The second key. */
private final String y;
public BindingKey(Component x, String y) {
this.x = x;
this.y = y;
}
//-- Object --//
public final boolean equals(Object o) {
if (o == this)
return true;
if (!(o instanceof BindingKey))
return false;
final BindingKey key = (BindingKey) o;
return Objects.equals(x, key.x) && Objects.equals(y, key.y);
}
public final int hashCode() {
return Objects.hashCode(x) ^ Objects.hashCode(y);
}
public String toString() {
return '(' + Objects.toString(x) + ", " + Objects.toString(y) + ')';
}
}