package ru.rsdn.patterns.behavioral.observer.problems.init;

import java.util.Collection;
import java.util.concurrent.CopyOnWriteArrayList;

import ru.rsdn.patterns.behavioral.observer.ISubscriber;
import ru.rsdn.patterns.behavioral.observer.AbstractPublisher;

/**
 * Издатель, который выявляет проблему небезопасного конструирования
 * подписчиков
 */
public class InitNotifyPublisher extends
		AbstractPublisher<Collection<ISubscriber>> {
	public InitNotifyPublisher() {
		super(new CopyOnWriteArrayList<ISubscriber>());
	}

	@Override
	public void subscribe(ISubscriber subscriber) {
		super.subscribe(subscriber);
		subscriber.eventHappen();
	}
}
