public <T> void link(PushMeasure<T> measure) {
		if (linkedMeasures.containsKey(measure)) {
			// already linked
		} else {
			MeasureListener<T> listener = new MeasureListener<T>() {

				@Override
				public void measureGenerated(T value) {
					increment();
				}
			};
			measure.register(listener);
			linkedMeasures.put(measure, listener);
		}
	}
public < T > void link ( PushMeasure < T > measure ) { if ( linkedMeasures . containsKey ( measure ) ) { } else { MeasureListener < T > listener = new MeasureListener < T > ( ) { @ Override public void measureGenerated ( T value ) { increment ( ) ; } } ; measure . register ( listener ) ; linkedMeasures . put ( measure , listener ) ; } }
If this {@link CountingMeasure} is used to count the number of time a
{@link PushMeasure} notifies its observers, you can use this method to
link them. The {@link CountingMeasure} will automatically register a
{@link MeasureListener} on the {@link PushMeasure} such that, every time
the {@link PushMeasure} send a notification,
{@link CountingMeasure#increment()} is called. You can link several
{@link PushMeasure}s at the same time, but each of their notifications
will increment the counter, leading to summing their notifications. When
a {@link PushMeasure} should not be considered anymore, use
{@link #unlink(PushMeasure)} to remove the link.

@param measure
the {@link PushMeasure} to link