/*
 *  Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
 *
 *  WSO2 Inc. licenses this file to you under the Apache License,
 *  Version 2.0 (the "License"); you may not use this file except
 *  in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *  http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing,
 *  software distributed under the License is distributed on an
 *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 *  KIND, either express or implied.  See the License for the
 *  specific language governing permissions and limitations
 *  under the License.
 */

package org.wso2.carbon.uuf.api.reference;

import java.util.stream.Stream;

public interface AppReference {

    String DIR_NAME_COMPONENTS = "components";
    String DIR_NAME_CUSTOMIZATIONS = "customizations";
    String DIR_NAME_THEMES = "themes";
    String FILE_NAME_DEPENDENCY_TREE = "dependency-tree.yaml";
    String FILE_NAME_CONFIGURATION = "configuration.yaml";

    String getName();

    ComponentReference getComponentReference(String componentContext);

    Stream<ThemeReference> getThemeReferences();

    FileReference getDependencyTree();

    FileReference getConfiguration();

    String getPath();
}

@@ -758,528 +758,2104 @@
 m;%0A%0A
-public interface AppReference %7B%0A%0A    String DIR_NAME_COMPONENTS = %22components%22;%0A    String DIR_NAME_CUSTOMIZATIONS = %22customizations%22;%0A    String DIR_NAME_THEMES = %22themes%22;%0A    String FILE_NAME_DEPENDENCY_TREE = %22dependency-tree.yaml%22;%0A    String FILE_NAME_CONFIGURATION = %22configuration.yaml%22;%0A%0A    String getName();%0A%0A    ComponentReference getComponentReference(String componentContext);%0A%0A    Stream%3CThemeReference%3E getThemeReferences();%0A%0A    FileReference getDependencyTree();%0A%0A    FileReference getConfiguration();%0A
+/**%0A * A reference to an UUF app artifact.%0A *%0A * @since 1.0.0%0A */%0Apublic interface AppReference %7B%0A%0A    /**%0A     * Name of the directory that contains UUF components.%0A     */%0A    String DIR_NAME_COMPONENTS = %22components%22;%0A    /**%0A     * Name of the directory that contains customized UUF components.%0A     */%0A    String DIR_NAME_CUSTOMIZATIONS = %22customizations%22;%0A    /**%0A     * Name of the directory that contains UUF themes.%0A     */%0A    String DIR_NAME_THEMES = %22themes%22;%0A    /**%0A     * Name of the file that has the dependency tree of the UUF components.%0A     */%0A    String FILE_NAME_DEPENDENCY_TREE = %22dependency-tree.yaml%22;%0A    /**%0A     * Name of the file that has the app configurations.%0A     */%0A    String FILE_NAME_CONFIGURATION = %22configuration.yaml%22;%0A%0A    /**%0A     * Returns the name of the UUF app represented by this reference.%0A     *%0A     * @return name of the UUF app%0A     */%0A    String getName();%0A%0A    /**%0A     * Returns a reference to the UUF component that belongs to the UUF app represented by this reference.%0A     *%0A     * @param componentContext context of the UUF component%0A     * @return reference to the UUF component%0A     */%0A    ComponentReference getComponentReference(String componentContext);%0A%0A    /**%0A     * Returns UUF theme reference of the UUF app represented by this reference.%0A     *%0A     * @return references for UUF themes of this UUF app%0A     */%0A    Stream%3CThemeReference%3E getThemeReferences();%0A%0A    /**%0A     * Returns a reference to the dependency tree file of the UUF app represented by this reference.%0A     *%0A     * @return reference to the dependency tree file%0A     * @see #FILE_NAME_DEPENDENCY_TREE%0A     */%0A    FileReference getDependencyTree();%0A%0A    /**%0A     * Returns a reference to the configuration file of the UUF app represented by this reference.%0A     *%0A     * @return reference to the configuration file of this UUF app%0A     * @see #FILE_NAME_CONFIGURATION%0A     */%0A    FileReference getConfiguration();%0A%0A    /**%0A     * Returns the absolute path to the UUF app represented by this reference.%0A     *%0A     * @return absolute path to the UUF app%0A     */
 %0A   

fix javadoc in AppReference interface