001    // Copyright 2009, 2011 The Apache Software Foundation
002    //
003    // Licensed under the Apache License, Version 2.0 (the "License");
004    // you may not use this file except in compliance with the License.
005    // You may obtain a copy of the License at
006    //
007    // http://www.apache.org/licenses/LICENSE-2.0
008    //
009    // Unless required by applicable law or agreed to in writing, software
010    // distributed under the License is distributed on an "AS IS" BASIS,
011    // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
012    // See the License for the specific language governing permissions and
013    // limitations under the License.
014    
015    package org.apache.tapestry5.ioc.def;
016    
017    import org.apache.tapestry5.ioc.Markable;
018    import org.apache.tapestry5.ioc.annotations.Contribute;
019    
020    /**
021     * Extended version of {@link org.apache.tapestry5.ioc.def.ContributionDef} introduced to determine any
022     * module method annotated with {@link Contribute} as a contributor method. As of version 5.2 a contribution
023     * identifies the service contributed either by the service id or by a combination of {@link Contribute} annotation and
024     * a set of marker annotations. This means that {@link #getServiceId()} may to return <code>null</code> if
025     * {@link #getServiceInterface()} returns a non <code>null</code> value.
026     *
027     * @since 5.2.0
028     */
029    public interface ContributionDef2 extends ContributionDef, Markable
030    {
031    
032    }