13742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman// Copyright 2003-2005 Arthur van Hoff, Rick Blair
23742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman// Licensed under Apache License version 2.0
33742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman// Original license LGPL
43742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman
53742d9db8b6edb10627b0f89336cca5249f1d15aManuel Romanpackage javax.jmdns;
63742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman
73742d9db8b6edb10627b0f89336cca5249f1d15aManuel Romanimport java.util.EventListener;
83742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman
93742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman/**
103742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman * Listener for service types.
113742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman *
123742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman * @author Arthur van Hoff, Werner Randelshofer
133742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman */
143742d9db8b6edb10627b0f89336cca5249f1d15aManuel Romanpublic interface ServiceTypeListener extends EventListener {
153742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman    /**
163742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     * A new service type was discovered.
173742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     *
183742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     * @param event
193742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     *            The service event providing the fully qualified type of the service.
203742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     */
213742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman    void serviceTypeAdded(ServiceEvent event);
223742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman
233742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman    /**
243742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     * A new subtype for the service type was discovered.
253742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     *
263742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     * <pre>
273742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     * &lt;sub&gt;._sub.&lt;app&gt;.&lt;protocol&gt;.&lt;servicedomain&gt;.&lt;parentdomain&gt;.
283742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     * </pre>
293742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     *
303742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     * @param event
313742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     *            The service event providing the fully qualified type of the service with subtype.
323742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     * @since 3.2.0
333742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman     */
343742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman    void subTypeForServiceTypeAdded(ServiceEvent event);
353742d9db8b6edb10627b0f89336cca5249f1d15aManuel Roman}
36