/*
 * Copyright (c) 2012 Mateusz Parzonka, Eric Bodden
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 * Mateusz Parzonka - initial API and implementation
 */
package prm4j.indexing.staticdata;

/**
 * Represents all less informative instances of the event instance which match its enable sets and are associated with
 * symbols, PLUS the compatible partial instances which map to parameter sets to fully instantiate joinable instances.
 */
public class ChainData {

    private final int[] nodeMask;
    private final int monitorSetId;

    public ChainData(int[] nodeMask, int monitorSetId) {
	super();
	this.nodeMask = nodeMask;
	this.monitorSetId = monitorSetId;
    }

    public int[] getNodeMask() {
	return nodeMask;
    }

    public int getMonitorSetId() {
	return monitorSetId;
    }

}

@@ -407,16 +407,42 @@
 cdata;%0A%0A
+import java.util.Arrays;%0A%0A
 /**%0A * R
@@ -1034,10 +1034,727 @@
 %0A    %7D%0A%0A
+    @Override%0A    public int hashCode() %7B%0A%09final int prime = 31;%0A%09int result = 1;%0A%09result = prime * result + monitorSetId;%0A%09result = prime * result + Arrays.hashCode(nodeMask);%0A%09return result;%0A    %7D%0A%0A    @Override%0A    public boolean equals(Object obj) %7B%0A%09if (this == obj)%0A%09    return true;%0A%09if (obj == null)%0A%09    return false;%0A%09if (getClass() != obj.getClass())%0A%09    return false;%0A%09ChainData other = (ChainData) obj;%0A%09if (monitorSetId != other.monitorSetId)%0A%09    return false;%0A%09if (!Arrays.equals(nodeMask, other.nodeMask))%0A%09    return false;%0A%09return true;%0A    %7D%0A%0A    @Override%0A    public String toString() %7B%0A%09return %22ChainData %5BnodeMask=%22 + Arrays.toString(nodeMask) + %22, monitorSetId=%22 + monitorSetId + %22%5D%22;%0A    %7D%0A%0A
 %7D%0A

Add hashCode, equals and toString to ChainData