001package org.intellimate.izou.sdk.specification; 002 003import org.intellimate.izou.resource.ResourceBuilderModel; 004import org.intellimate.izou.sdk.contentgenerator.EventListener; 005import org.intellimate.izou.sdk.resource.Resource; 006 007import java.util.List; 008 009/** 010 * The Task of an ContentGenerator is to generate a Resources-Object when a Event it subscribed to was fired. 011 * <p> 012 * When an Event this ContentGenerator subscribed to was fired, the ContentGeneratorManager will run the instance 013 * of it in a ThreadPool and generate(String eventID) will be called. 014 * </p> 015 * @author Leander Kurscheidt 016 * @version 1.0 017 */ 018public interface ContentGeneratorModel extends ResourceBuilderModel { 019 /** 020 * this method returns a List of EventListener, which indicate for which Events the ContentGenerator should be 021 * triggered. 022 * @return a List of EventListeners 023 */ 024 List<? extends EventListener> getTriggeredEvents(); 025 026 /** 027 * This method is called to register what resources the object provides. 028 * just pass a List of Resources without Data in it. 029 * 030 * @return a List containing the resources the object provides 031 */ 032 List<? extends Resource> getTriggeredResources(); 033}