// Carnegie Mellon University
//   Information Networking Institute and
//   School of Computer Science
//
// Master Thesis: A Monitoring Tool for Overlay Network
// By: TungFai Chan and Annie Cheng
//
// File: SpanningTreeStoringObject.java
// Path: eventbase/routing
// Description: Temporary structure to store Spanning Tree Information

package eventbase.routing;

import java.util.*;

public class SpanningTreeStoringObject {
    private double time;
    private String forwardingHost;
    private int numUniqueHostsInTable;
    private Vector entries;
    public SpanningTreeStoringObject (double t, int vrtSize,  
				      String forwarding_host) {
	this.time = t;
	this.forwardingHost = forwarding_host;
	this.numUniqueHostsInTable = vrtSize;
	this.entries = new Vector();
    }
    
    public int numUniqueHosts() {
	return this.numUniqueHostsInTable;
    }

    public double getTime() {
	return time;
    }

    public String getForwardingHost() {
	return forwardingHost;
    }

    public Vector getEntries() {
	return entries;
    }

    public void insertEntry(SpanningTreeStoringEntries e) {
	entries.add(e);
    }

    public void print() {
	System.out.println();
	System.out.println("time: " + time + "num entries: " + numUniqueHostsInTable + " forwardingHost: " + forwardingHost); 
	for (int i =0; i < entries.size(); i++) {
	    ((SpanningTreeStoringEntries)entries.elementAt(i)).print();
	}
	System.out.println();
    }
    
}
