.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
+============
Architecture
============
* This note must be removed after content has been added.
+SDC As Part of ONAP
+===================
+
+.. image:: images/SDC_In_ONAP.png
+
+
+High Level Architecture
+=======================
+
+The following diagram shows the high-level relationship between the system components:
+
+.. image:: images/High_Level_Architecture_SDC.png
+
+The SDC architecture uses the Jetty server as an application server.
+
+- The **Jetty front end**:
+ - supplies the static content of web pages, and all resources that required by the GUI
+ - serves as a proxy for the REST API requests coming from the GUI
+
+ Every request originating from the GUI is passed to the Jetty front-end server before it is executed.
+
+- The **Jetty back end** containes all the logic for the SDC.
+
+SDC uses two storage components: Elastic Search(ES) and Cassandra
+
+- **Elastic Search** is used to index the auditing data received from different operations in the SDC.
+
+ This information can then be analyzed with Kibana. The **Kibana server** enables statistical analysis of the operations done, according to the business logic.
+
+- **Cassandra** is used to store auditing data, artifacts and data model objects.
+
Capabilities
-------------
+============
Usage Scenarios
----------------
+===============
Interactions
-------------
+============
--- /dev/null
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+========
+SDC SDKs
+========
+
+
+SDC SDKs List
+=============
+
+The sdc projects consists of a few additional sub projects listed below:
+
+- sdc-tosca
+- sdc-jtosca
+- sdc-distribution-client
+- sdc-titan-cassandra
+
+SDC SDKs guide
+==============
+
+SDC-TOSCA and SDC-DISTRIBUTION-CLIENT
+-------------------------------------
+| This is a link to a document describing the usage for the sdc-tosca, sdc-jtosca and sdc-distribution-client projects: `SDC Sub Projects <https://wiki.onap.org/display/DW/SDC+Distribution+client+AID?preview=/11929307/11929304/SDC_Distribution_AID_1710_030717.docx>`_
+|
+| The link describes the use of distribution client and the sdc-tosca.
+| jtosca is used by sdc-tosca as a dependency and is not used separately
+
+SDC-TITAN-CASSANDRA
+-------------------
+
+| This is a link to the github page of titan project for extra reading regarding Titan DB: `<https://github.com/thinkaurelius/titan>`_
+|
+| SDC forked part of the project to overide the default Titan configuration for Cassandra.
+| The change allows the use of Titan as an active pasive deployment for geo redudndency.
+|
+| Titan by default uses QUORUM in Cassandra on write and read operations.
+| Using our change allows the use of local QUORUM to read and write only to a spacific data center.
+| Since the project is in end of life state the change cannot be merged back to the project.
+
+
package org.openecomp.sdc.ci.tests.api;
-import ch.qos.logback.classic.Level;
-import ch.qos.logback.classic.LoggerContext;
-import com.aventstack.extentreports.ExtentTest;
-import com.aventstack.extentreports.Status;
-import com.thinkaurelius.titan.core.TitanFactory;
-import com.thinkaurelius.titan.core.TitanGraph;
-import com.thinkaurelius.titan.core.TitanVertex;
+import static org.testng.AssertJUnit.assertEquals;
+import static org.testng.AssertJUnit.assertNotNull;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.function.Consumer;
+import java.util.stream.Collectors;
+
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.NodeTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
-import org.openecomp.sdc.be.model.*;
+import org.openecomp.sdc.be.model.Component;
+import org.openecomp.sdc.be.model.Product;
+import org.openecomp.sdc.be.model.Resource;
+import org.openecomp.sdc.be.model.Service;
+import org.openecomp.sdc.be.model.User;
import org.openecomp.sdc.ci.tests.config.Config;
import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails;
import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum;
import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils;
import org.openecomp.sdc.ci.tests.utils.general.ElementFactory;
import org.openecomp.sdc.ci.tests.utils.general.FileHandling;
-import org.openecomp.sdc.ci.tests.utils.rest.*;
+import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils;
+import org.openecomp.sdc.ci.tests.utils.rest.CatalogRestUtils;
+import org.openecomp.sdc.ci.tests.utils.rest.CategoryRestUtils;
+import org.openecomp.sdc.ci.tests.utils.rest.ProductRestUtils;
+import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils;
+import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser;
+import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils;
import org.slf4j.LoggerFactory;
import org.testng.ITestContext;
import org.testng.ITestResult;
-import org.testng.annotations.*;
+import org.testng.annotations.AfterClass;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.AfterSuite;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.BeforeSuite;
+import org.testng.annotations.Test;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.util.*;
-import java.util.function.Consumer;
-import java.util.stream.Collectors;
+import com.aventstack.extentreports.ExtentTest;
+import com.aventstack.extentreports.Status;
+import com.thinkaurelius.titan.core.TitanFactory;
+import com.thinkaurelius.titan.core.TitanGraph;
+import com.thinkaurelius.titan.core.TitanVertex;
-import static org.testng.AssertJUnit.assertEquals;
-import static org.testng.AssertJUnit.assertNotNull;
+import ch.qos.logback.classic.Level;
+import ch.qos.logback.classic.LoggerContext;
public abstract class ComponentBaseTest {
openTitanLogic();
performClean();
-
-
+ String basePath = FileHandling.getBasePath();
+ String csarDir = FileHandling.getCreateDirByName("outputCsar");
+ FileUtils.cleanDirectory(new File(csarDir));
}
@BeforeMethod(alwaysRun = true)
performClean();
shutdownTitanLogic();
-// String basePath = FileHandling.getBasePath();
-// String csarDir = FileHandling.getCreateDirByName("outputCsar");
-// FileUtils.cleanDirectory(new File(csarDir));
-
-
}
protected static void openTitanLogic() throws Exception {