Moving all files to root directory
[appc.git] / README.md
index f840f3b..9024ed1 100644 (file)
--- a/README.md
+++ b/README.md
@@ -17,6 +17,28 @@ The docker containers described above are set up to be deployed on the same Virt
 
 APP-C (structured as a Maven project) uses the Maven tool to help compile, build, and deploy APP-C Artifacts (usually made up of Java packages) into a Maven Repository. In order to compile and build APP-C, a `mvn clean install` is executed, which checks for any errors and Java exceptions during compilation process.
 
+##### Handling YANG Models
+* After running `mvn clean install`, this will generate some code from the yang models.
+* Modify the yang model file under the model project.
+* Follow the comments in the generated provider class to wire your new provider into the generated 
+code.
+* Modify the generated provider model to respond to and handle the yang model. Depending on what
+you added to your model you may need to inherit additional interfaces or make other changes to
+the provider model.
+
+##### Structure of a ODL Karaf Feature in APP-C
+* model
+    - Provides the yang model for your application. This is your primary northbound interface.
+* provider
+    - This is where the JAVA code is implemented. This part will define what the Karaf Feature will accomplish and how it will respond to a yang model.
+* features
+    - Defines the contents of a Karaf Feature. If you add dependencies on third-party bundles, then you will need to
+      modify the features.xml to list out the dependencies.
+* installer
+    - Bundles all of the jars and third party dependencies (minus ODL dependencies) into a single
+      .zip file with the necessary configuration files in order to install the Karaf Feature by means of calling the Karaf Client (which will ultimately run "feature:install <FEATURE_NAME>") in order to install the feature.
+
+
 # Deploying APP-C
 In order to deploy APP-C, a Docker-ready machine needs to be available in order to deploy the APP-C Docker Containers. The following will help explain the requirements in order to run Docker to deploy these containers.
 
@@ -174,4 +196,3 @@ Currently, there are two ways to change properties for APP-C Features:
 # Additional Notes
 
 - For more information on a current list of available properties for APP-C Features, please go to README.md located in the installation directory path of the APP-C Deployment Code.
-