Removed sap server example for license reasons
Signed-off-by: Andrea Cosentino <ancosen@gmail.com>
diff --git a/sapjcoserver/.gitignore b/sapjcoserver/.gitignore
deleted file mode 100644
index 5820ce0..0000000
--- a/sapjcoserver/.gitignore
+++ /dev/null
@@ -1,38 +0,0 @@
-/target/
-!.mvn/wrapper/maven-wrapper.jar
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/build/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-
-#### logs ###
-/log/
-*.log
-*.gz
-
-#### jar ###
-*.jar
-*.war
-*.zip
-
-sapoutput
-
diff --git a/sapjcoserver/lib/readme.txt b/sapjcoserver/lib/readme.txt
deleted file mode 100644
index 4ffc30c..0000000
--- a/sapjcoserver/lib/readme.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-
-# please download sap's jco's lib , and copy jco jars and dll files to sapjcoserver/lib directory due to SAP license.
-Below is example for sapjco3, if you use different version, please modify jar's name in pom.xml.
-
- sapjco3.jar
- sapidoc3.jar
- sapjco3.dll
- libsapjco3.so
\ No newline at end of file
diff --git a/sapjcoserver/pom.xml b/sapjcoserver/pom.xml
deleted file mode 100644
index 40af4d6..0000000
--- a/sapjcoserver/pom.xml
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.apache.camel.springboot.example</groupId>
- <artifactId>examples</artifactId>
- <version>3.19.0-SNAPSHOT</version>
- </parent>
-
- <groupId>org.apache.camel.springboot.example</groupId>
- <artifactId>camel-example-spring-boot-sapjcoserver</artifactId>
- <name>Camel SB Examples :: SAP JCOServer</name>
- <description>An example showing how to work with Camel,SAP JCOServer and Spring Boot</description>
- <properties>
- <category>SAP</category>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
- </properties>
-
- <dependencyManagement>
-
- <dependencies>
- <!-- Spring Boot BOM -->
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-dependencies</artifactId>
- <version>${spring-boot-version}</version>
- <type>pom</type>
- <scope>import</scope>
- </dependency>
-
- <!-- Camel BOM -->
- <dependency>
- <groupId>org.apache.camel.springboot</groupId>
- <artifactId>camel-spring-boot-bom</artifactId>
- <version>${project.version}</version>
- <type>pom</type>
- <scope>import</scope>
- </dependency>
- </dependencies>
-
- </dependencyManagement>
-
- <dependencies>
- <!-- Spring Boot -->
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-web</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <!-- Camel -->
- <dependency>
- <groupId>org.apache.camel.springboot</groupId>
- <artifactId>camel-spring-boot-starter</artifactId>
- </dependency>
-
-
- <!-- https://mvnrepository.com/artifact/org.json/json -->
- <dependency>
- <groupId>org.json</groupId>
- <artifactId>json</artifactId>
- <version>20210307</version>
- </dependency>
-
- <dependency>
- <groupId>com.sap.conn.jco</groupId>
- <artifactId>sapjco</artifactId>
- <version>3</version>
- <scope>system</scope>
- <systemPath>${basedir}/lib/sapjco3.jar</systemPath>
- </dependency>
-
- <dependency>
- <groupId>com.sap.conn.jco</groupId>
- <artifactId>sapidoc</artifactId>
- <version>3</version>
- <scope>system</scope>
- <systemPath>${basedir}/lib/sapidoc3.jar</systemPath>
- </dependency>
-
-
- <!-- test -->
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-test</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.camel</groupId>
- <artifactId>camel-test-spring-junit5</artifactId>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-
-
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- <version>${spring-boot-version}</version>
- <executions>
- <execution>
- <goals>
- <goal>repackage</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/sapjcoserver/readme.assets/Picture1.png b/sapjcoserver/readme.assets/Picture1.png
deleted file mode 100644
index db22876..0000000
--- a/sapjcoserver/readme.assets/Picture1.png
+++ /dev/null
Binary files differ
diff --git a/sapjcoserver/readme.assets/Picture2.png b/sapjcoserver/readme.assets/Picture2.png
deleted file mode 100644
index 53eafc5..0000000
--- a/sapjcoserver/readme.assets/Picture2.png
+++ /dev/null
Binary files differ
diff --git a/sapjcoserver/readme.assets/Picture3.png b/sapjcoserver/readme.assets/Picture3.png
deleted file mode 100644
index c8abf9e..0000000
--- a/sapjcoserver/readme.assets/Picture3.png
+++ /dev/null
Binary files differ
diff --git a/sapjcoserver/readme.assets/Picture4.png b/sapjcoserver/readme.assets/Picture4.png
deleted file mode 100644
index c9bb470..0000000
--- a/sapjcoserver/readme.assets/Picture4.png
+++ /dev/null
Binary files differ
diff --git a/sapjcoserver/readme.assets/Picture5.png b/sapjcoserver/readme.assets/Picture5.png
deleted file mode 100644
index d49828d..0000000
--- a/sapjcoserver/readme.assets/Picture5.png
+++ /dev/null
Binary files differ
diff --git a/sapjcoserver/readme.assets/sapjco.png b/sapjcoserver/readme.assets/sapjco.png
deleted file mode 100644
index 1b9ee70..0000000
--- a/sapjcoserver/readme.assets/sapjco.png
+++ /dev/null
Binary files differ
diff --git a/sapjcoserver/readme.md b/sapjcoserver/readme.md
deleted file mode 100644
index 9372f95..0000000
--- a/sapjcoserver/readme.md
+++ /dev/null
@@ -1,54 +0,0 @@
-# Integrate Sap JCOServer with Springboot and Apache Camel
-
-### The usecase
-
-SAP ABAP RFC call -> SpringBoot+ApacheCamel -> FileSystem
-
-I wrote a springboot+Apachecamel Application to demonstrate how to receive the ABAP function's result and store it at file system.
-
-### prepare sap jco connector libs
-
-copy jco jars, .dll (for windows), and .so(for linux) files to lib directory as below shown
-
-![image-jco lib](readme.assets/sapjco.png)
-
-
-### run apache camel springboot application
-
-For linux
-```
-export ASHOST=<jco client ashost>
-export GWHOST=<jco server gwhost>
-```
-For windows
-```
-set ASHOST=<jco client ashost>
-set GWHOST=<jco server gwhost>
-```
-run test
-```
-mvn -Dtest=sample.camel.SampleJCOServerApplicationTests test
-```
-run program
-```
-mvn spring-boot:run
-```
-![image-1](readme.assets/Picture1.png)
-
-
-### execute ABAP function in SAP System
-```
-Execute Tcode se37 -> STFC_CONNECTION (SAP default Test Function)
-```
-![image-2](readme.assets/Picture2.png)
-
-put RFC Target System (it is ...not... as same as progid configured in application.yaml file) and input parameter
-![image-3](readme.assets/Picture3.png)
-
-### check result and output
-
-You will see ABAP function's result at console
-![image-4](readme.assets/Picture4.png)
-
-The result of ABAP function is also stored as file by camel in your local computer where your java program runs
-![image-5](readme.assets/Picture5.png)
\ No newline at end of file
diff --git a/sapjcoserver/src/main/java/sample/camel/AbapCallHandler.java b/sapjcoserver/src/main/java/sample/camel/AbapCallHandler.java
deleted file mode 100644
index 69660e4..0000000
--- a/sapjcoserver/src/main/java/sample/camel/AbapCallHandler.java
+++ /dev/null
@@ -1,112 +0,0 @@
-package sample.camel;
-
-import java.util.Iterator;
-import org.apache.camel.ProducerTemplate;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-
-import com.sap.conn.jco.JCoField;
-import com.sap.conn.jco.JCoFunction;
-import com.sap.conn.jco.JCoParameterList;
-import com.sap.conn.jco.server.JCoServerContext;
-import com.sap.conn.jco.server.JCoServerFunctionHandler;
-
-import sample.camel.util.XMLUtil;
-
-@Component("abapCallHandler")
-public class AbapCallHandler implements JCoServerFunctionHandler {
-
- @Value("${jco.server.rfc.name}")
- private String RFC_FUNCTION_NAME;
-
- @Autowired
- private ProducerTemplate producerTemplate;
-
- @Value("${jco.server.rfc.importparam.exist}")
- public boolean isImportParamExisted;
- @Value("${jco.server.rfc.exportparam.exist}")
- public boolean isExportParamExisted;
- @Value("${jco.server.rfc.tableparam.exist}")
- public boolean isTableParamExisted;
-
- private static Logger logger = LoggerFactory.getLogger(AbapCallHandler.class);
-
- public String getRFCName() {
- return this.RFC_FUNCTION_NAME;
- }
-
- private void printRequestInformation(JCoServerContext serverCtx, JCoFunction function) {
- logger.info("----------------------------------------------------------------");
- logger.info("call : " + function.getName());
- logger.info("ConnectionId : " + serverCtx.getConnectionID());
- logger.info("SessionId : " + serverCtx.getSessionID());
- logger.info("TID : " + serverCtx.getTID());
- logger.info("repository name : " + serverCtx.getRepository().getName());
- logger.info("is in transaction : " + serverCtx.isInTransaction());
- logger.info("is stateful : " + serverCtx.isStatefulSession());
- logger.info("----------------------------------------------------------------");
- logger.info("gwhost: " + serverCtx.getServer().getGatewayHost());
- logger.info("gwserv: " + serverCtx.getServer().getGatewayService());
- logger.info("progid: " + serverCtx.getServer().getProgramID());
- logger.info("----------------------------------------------------------------");
- logger.info("attributes : ");
- logger.info(serverCtx.getConnectionAttributes().toString());
- logger.info("----------------------------------------------------------------");
- }
-
- public void handleRequest(JCoServerContext serverCtx, JCoFunction function) {
- // Check if the called function is the supported one.
- if (!function.getName().equals(RFC_FUNCTION_NAME)) {
- logger.error("Function '" + function.getName() + "' is no supported to be handled!");
- return;
- }
- printRequestInformation(serverCtx, function);
-
- String xmlResultTable = null;
-
- if (isImportParamExisted) {
- logger.info("--------------------- Import ParamList ------------------------------------------");
- Iterator<JCoField> importIterator = function.getImportParameterList().iterator();
- StringBuilder importParamBuilder=new StringBuilder();
- while (importIterator != null && importIterator.hasNext()) {
- JCoField importParam = importIterator.next();
- logger.info(importParam.getName() + " " + importParam.getValue() + "\n ");
- importParamBuilder.append(importParam.getName() + " " + importParam.getValue() + "\n ");
- }
- producerTemplate.sendBody("direct:saprfc", "get result from sap " + importParamBuilder.toString());
-
- } else {
- logger.info("--------------------- No Import ParamList ------------------------------------------");
- }
-
- if (isTableParamExisted) {
- logger.info("--------------------- TableParameterList------------------------------------------");
- JCoParameterList tables = function.getTableParameterList();
-
- if (tables != null) {
- xmlResultTable = XMLUtil.prettyPrintXml(tables.toXML());
- logger.info("Table Result as XML " + " \n" + XMLUtil.prettyPrintXml(xmlResultTable) + "\n ");
- producerTemplate.sendBody("direct:saprfc", "get result from sap " + xmlResultTable);
- }
- } else {
- logger.info("--------------------- No TableParameterList------------------------------------------");
- }
-
- if (isExportParamExisted) {
- logger.info("--------------------- Export ParamList ------------------------------------------");
- Iterator<JCoField> exportIterator = function.getExportParameterList().iterator();
- StringBuilder exportParamBuilder=new StringBuilder();
- while (exportIterator != null && exportIterator.hasNext()) {
- JCoField exportParam = exportIterator.next();
- logger.info(exportParam.getName() + " " + exportParam.getValue() + "\n ");
- exportParamBuilder.append(exportParam.getName() + " " + exportParam.getValue() + "\n ");
- producerTemplate.sendBody("direct:saprfc", "get result from sap " + exportParamBuilder.toString());
- }
- } else {
- logger.info("--------------------- No Export ParamList ------------------------------------------");
- }
- }
-}
\ No newline at end of file
diff --git a/sapjcoserver/src/main/java/sample/camel/CamelSapServerApplication.java b/sapjcoserver/src/main/java/sample/camel/CamelSapServerApplication.java
deleted file mode 100644
index 957f1f9..0000000
--- a/sapjcoserver/src/main/java/sample/camel/CamelSapServerApplication.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package sample.camel;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-
-
-@SpringBootApplication
-public class CamelSapServerApplication {
-
- private static final Logger LOG = LoggerFactory.getLogger(CamelSapServerApplication.class);
-
-
-
- public static void main(String[] args) {
- SpringApplication.run(CamelSapServerApplication.class, args);
- LOG.info("CamelSapServerApplication is up and running");
- }
-
-
-}
diff --git a/sapjcoserver/src/main/java/sample/camel/SAPtoFileRouteBuilder.java b/sapjcoserver/src/main/java/sample/camel/SAPtoFileRouteBuilder.java
deleted file mode 100644
index c9e744a..0000000
--- a/sapjcoserver/src/main/java/sample/camel/SAPtoFileRouteBuilder.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package sample.camel;
-
-import org.apache.camel.builder.RouteBuilder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Component;
-
-
-@Component
-public class SAPtoFileRouteBuilder extends RouteBuilder {
-
- private static final Logger LOG = LoggerFactory.getLogger(SAPtoFileRouteBuilder.class);
- public void configure() throws Exception {
- from("direct:saprfc").id("route: direct_saprfc")
- .log("Processing ..... ${body}")
- .to("file:sapoutput");
- }
-}
\ No newline at end of file
diff --git a/sapjcoserver/src/main/java/sample/camel/SimpleAbapConnectorServer.java b/sapjcoserver/src/main/java/sample/camel/SimpleAbapConnectorServer.java
deleted file mode 100644
index 21c36ec..0000000
--- a/sapjcoserver/src/main/java/sample/camel/SimpleAbapConnectorServer.java
+++ /dev/null
@@ -1,201 +0,0 @@
-package sample.camel;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.util.Properties;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.InitializingBean;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-
-import com.sap.conn.jco.JCoException;
-import com.sap.conn.jco.ext.DestinationDataProvider;
-import com.sap.conn.jco.ext.ServerDataProvider;
-import com.sap.conn.jco.server.DefaultServerHandlerFactory;
-import com.sap.conn.jco.server.JCoServer;
-import com.sap.conn.jco.server.JCoServerContextInfo;
-import com.sap.conn.jco.server.JCoServerErrorListener;
-import com.sap.conn.jco.server.JCoServerExceptionListener;
-import com.sap.conn.jco.server.JCoServerFactory;
-import com.sap.conn.jco.server.JCoServerFunctionHandler;
-import com.sap.conn.jco.server.JCoServerState;
-import com.sap.conn.jco.server.JCoServerStateChangedListener;
-
-import sample.camel.util.MyDestinationDataProvider;
-import sample.camel.util.MyServerDataProvider;
-
-@Component("simpleAbapConnectorServer")
-public class SimpleAbapConnectorServer
- implements JCoServerErrorListener, JCoServerExceptionListener, JCoServerStateChangedListener, InitializingBean {
-
- private static Logger logger = LoggerFactory.getLogger(SimpleAbapConnectorServer.class);
-
- @Value("${sap.system.name}")
- private String sapSystemName;
-
- @Value("${jco.client.ashost}")
- private String jcoClientashost;
-
- @Value("${jco.client.client}")
- private String jcoClientclient;
-
- @Value("${jco.client.lang}")
- private String jcoClientlang;
-
- @Value("${jco.client.sysnr}")
- private String jcoClientsysnr;
-
- @Value("${jco.client.user}")
- private String jcoClientuser;
-
- @Value("${jco.client.passwd}")
- private String jcoClientpasswd;
-
- @Value("${jco.client.network}")
- private String jcoClientnetwork;
-
- @Value("${jco.server.connection_count}")
- private String jcoServerConnection_count;
-
- @Value("${jco.server.gwhost}")
- private String jcoServerGwhost;
-
- @Value("${jco.server.gwserv}")
- private String jcoServerGwserv;
-
- @Value("${jco.server.progid}")
- private String jcoServerProgid;
-
- @Value("${jco.server.repository_destination}")
- private String jcoServerRepository_destination;
-
- @Value("${jco.server.rfc.name}")
- private String jcoServerrfcname;
-
- @Value("${jco.server.rfc.tableparam.exist}")
- private String jcoServerRfcTableparamExist;
-
- @Autowired
- MyDestinationDataProvider myDestinationDataProvider;
-
- @Autowired
- MyServerDataProvider myServerDataProvider;
-
- @Autowired
- AbapCallHandler abapCallHandler;
-
-
- public void init() {
- Properties destinationProperties = new Properties();
- destinationProperties.setProperty(DestinationDataProvider.JCO_ASHOST, jcoClientashost);
- destinationProperties.setProperty(DestinationDataProvider.JCO_SYSNR, jcoClientsysnr);
- destinationProperties.setProperty(DestinationDataProvider.JCO_CLIENT, jcoClientclient);
- destinationProperties.setProperty(DestinationDataProvider.JCO_USER, jcoClientuser);
- destinationProperties.setProperty(DestinationDataProvider.JCO_PASSWD, jcoClientpasswd);
- destinationProperties.setProperty(DestinationDataProvider.JCO_LANG, jcoClientlang);
- destinationProperties.setProperty(DestinationDataProvider.JCO_NETWORK, jcoClientnetwork);
-
-
- Properties serverProperties = new Properties();
-
- serverProperties.setProperty(ServerDataProvider.JCO_CONNECTION_COUNT, jcoServerConnection_count);
- serverProperties.setProperty(ServerDataProvider.JCO_GWHOST, jcoServerGwhost);
- serverProperties.setProperty(ServerDataProvider.JCO_GWSERV, jcoServerGwserv);
- serverProperties.setProperty(ServerDataProvider.JCO_PROGID, jcoServerProgid);
- serverProperties.setProperty(ServerDataProvider.JCO_REP_DEST, jcoServerRepository_destination);
-
- myDestinationDataProvider.addDestination(sapSystemName, destinationProperties);
- com.sap.conn.jco.ext.Environment.registerDestinationDataProvider(myDestinationDataProvider);
- myServerDataProvider.addServer(sapSystemName, serverProperties);
- com.sap.conn.jco.ext.Environment.registerServerDataProvider(myServerDataProvider);
-
- }
-
-
-
-
- public void serve() {
- JCoServer server;
- try {
- server = JCoServerFactory.getServer(
- sapSystemName);
- } catch (JCoException e) {
- throw new RuntimeException("Unable to create the server "
- + sapSystemName
- + ", because of " + e.getMessage(), e);
- }
-
- DefaultServerHandlerFactory.FunctionHandlerFactory factory = new DefaultServerHandlerFactory.FunctionHandlerFactory();
- factory.registerHandler(abapCallHandler.getRFCName(), abapCallHandler);
- server.setCallHandlerFactory(factory);
-
- // Add listener for errors.
- server.addServerErrorListener(this);
- // Add listener for exceptions.
- server.addServerExceptionListener(this);
- // Add server state change listener.
- server.addServerStateChangedListener(this);
-
- // Stop server when get end from SystemIn
- new Thread(()->{
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- String line = null;
- try {
- while ((line = br.readLine()) != null) {
- // Check if the server should be ended.
- if (line.equalsIgnoreCase("end")) {
- // Stop the server.
- server.stop();
- }
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- }).start();
-
- // Start the server
- server.start();
- logger.info("The program can be stopped typing 'END'");
- }
-
- @Override
- public void serverExceptionOccurred(JCoServer jcoServer, String connectionId, JCoServerContextInfo arg2,
- Exception exception) {
- logger.error("Exception occured on " + jcoServer.getProgramID() + " connection " + connectionId, exception);
- }
-
- @Override
- public void serverErrorOccurred(JCoServer jcoServer, String connectionId, JCoServerContextInfo arg2, Error error) {
- logger.error("Error occured on " + jcoServer.getProgramID() + " connection " + connectionId, error);
- }
-
- @Override
- public void serverStateChangeOccurred(JCoServer server, JCoServerState oldState, JCoServerState newState) {
- // Defined states are: STARTED, DEAD, ALIVE, STOPPED;
- // see JCoServerState class for details.
- // Details for connections managed by a server instance
- // are available via JCoServerMonitor
- logger.info("Server state changed from " + oldState.toString() + " to " + newState.toString()
- + " on server with program id " + server.getProgramID());
- if (newState.equals(JCoServerState.ALIVE)) {
- logger.info("Server with program ID '" + server.getProgramID() + "' is running");
- }
- if (newState.equals(JCoServerState.STOPPED)) {
- logger.info("Exit program");
- System.exit(0);
- }
- }
-
- @Override
- public void afterPropertiesSet() throws Exception {
- init();
- logger.info(" SimpleAbapConnectorServer is ready to start");
- serve();
- }
-
-
-}
\ No newline at end of file
diff --git a/sapjcoserver/src/main/java/sample/camel/util/MyDestinationDataProvider.java b/sapjcoserver/src/main/java/sample/camel/util/MyDestinationDataProvider.java
deleted file mode 100644
index abfce1b..0000000
--- a/sapjcoserver/src/main/java/sample/camel/util/MyDestinationDataProvider.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package sample.camel.util;
-
-
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Properties;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Component;
-
-import com.sap.conn.jco.ext.DestinationDataEventListener;
-import com.sap.conn.jco.ext.DestinationDataProvider;
-
-@Component("myDestinationDataProvider")
-public class MyDestinationDataProvider implements DestinationDataProvider {
-
- private static final Logger LOG = LoggerFactory.getLogger(MyDestinationDataProvider.class);
- Map<String, Properties> propertiesForDestinationName = new HashMap<String, Properties>();
-
- public void addDestination(String destinationName, Properties properties) {
- propertiesForDestinationName.put(destinationName, properties);
- }
-
- public Properties getDestinationProperties(String destinationName) {
- if (propertiesForDestinationName.containsKey(destinationName)) {
- return propertiesForDestinationName.get(destinationName);
- } else {
- throw new RuntimeException("JCo destination not found: " + destinationName);
- }
- }
-
- @Override
- public boolean supportsEvents() {
- return false;
- }
-
- @Override
- public void setDestinationDataEventListener(DestinationDataEventListener arg0) {
- // TODO Auto-generated method stub
-
- }
-}
\ No newline at end of file
diff --git a/sapjcoserver/src/main/java/sample/camel/util/MyServerDataProvider.java b/sapjcoserver/src/main/java/sample/camel/util/MyServerDataProvider.java
deleted file mode 100644
index ef8025c..0000000
--- a/sapjcoserver/src/main/java/sample/camel/util/MyServerDataProvider.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package sample.camel.util;
-
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Properties;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Component;
-
-import com.sap.conn.jco.ext.ServerDataEventListener;
-import com.sap.conn.jco.ext.ServerDataProvider;
-
-@Component("myServerDataProvider")
-public class MyServerDataProvider implements ServerDataProvider {
-
- private static final Logger LOG = LoggerFactory.getLogger(MyServerDataProvider.class);
-
- Map<String, Properties> propertiesForServerName = new HashMap<String, Properties>();
-
- public void addServer(String destinationName, Properties properties) {
- propertiesForServerName.put(destinationName, properties);
- }
-
- public Properties getServerProperties(String serverName) {
- if (propertiesForServerName.containsKey(serverName)) {
- return propertiesForServerName.get(serverName);
- } else {
- throw new RuntimeException("JCo server not found: " + serverName);
- }
- }
-
- @Override
- public void setServerDataEventListener(ServerDataEventListener listener) {
- }
-
- @Override
- public boolean supportsEvents() {
- return false;
- }
-}
\ No newline at end of file
diff --git a/sapjcoserver/src/main/java/sample/camel/util/XMLUtil.java b/sapjcoserver/src/main/java/sample/camel/util/XMLUtil.java
deleted file mode 100644
index f8b76e3..0000000
--- a/sapjcoserver/src/main/java/sample/camel/util/XMLUtil.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package sample.camel.util;
-
-
-
-import java.io.PrintWriter;
-import java.io.StringReader;
-import java.io.StringWriter;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import org.w3c.dom.Document;
-import org.xml.sax.InputSource;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class XMLUtil {
- static Logger logger = LoggerFactory.getLogger("XMLUtil");
-
- public static String prettyPrintXml(String xmlStringToBeFormatted) {
- String formattedXmlString = null;
- try {
- DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
- documentBuilderFactory.setValidating(false);
- DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
- InputSource inputSource = new InputSource(new StringReader(xmlStringToBeFormatted));
- Document document = documentBuilder.parse(inputSource);
-
- Transformer transformer = TransformerFactory.newInstance().newTransformer();
- transformer.setOutputProperty(OutputKeys.INDENT, "yes");
- transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
-
- StreamResult streamResult = new StreamResult(new StringWriter());
- DOMSource dOMSource = new DOMSource(document);
- transformer.transform(dOMSource, streamResult);
- formattedXmlString = streamResult.getWriter().toString().trim();
- } catch (Exception ex) {
- StringWriter sw = new StringWriter();
- ex.printStackTrace(new PrintWriter(sw));
- logger.error(sw.toString());
- }
- return formattedXmlString;
- }
-}
diff --git a/sapjcoserver/src/main/resources/application.yaml b/sapjcoserver/src/main/resources/application.yaml
deleted file mode 100644
index 4b3f38d..0000000
--- a/sapjcoserver/src/main/resources/application.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-camel:
- springboot:
- main-run-controller: 'true'
-
-sap:
- system:
- name: TESTSAP
-jco:
- client:
- ashost: ${ASHOST}
- client: 600
- lang: en
- sysnr: 01
- user: username
- passwd: password
- network: lan
-
- server:
- connection_count: 2
- gwhost: ${GWHOST}
- gwserv: 3300
- progid: PROGID
- repository_destination: TESTSAP
-
- rfc:
- name: STFC_CONNECTION
- exportparam:
- exist: false
- importparam:
- exist: true
- tableparam:
- exist: false
\ No newline at end of file
diff --git a/sapjcoserver/src/test/java/sample/camel/SampleJCOServerApplicationTests.java b/sapjcoserver/src/test/java/sample/camel/SampleJCOServerApplicationTests.java
deleted file mode 100644
index 9fa93d6..0000000
--- a/sapjcoserver/src/test/java/sample/camel/SampleJCOServerApplicationTests.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF 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 sample.camel;
-
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.ProducerTemplate;
-import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.test.spring.junit5.CamelSpringBootTest;
-import org.apache.camel.test.spring.junit5.MockEndpoints;
-import org.junit.jupiter.api.Test;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.annotation.DirtiesContext.MethodMode;
-
-@CamelSpringBootTest
-@SpringBootTest
-@MockEndpoints("file:sapoutput")
-public class SampleJCOServerApplicationTests {
-
- @Autowired
- ProducerTemplate producerTemplate;
-
-
- @Autowired
- CamelContext camelContext;
-
- @Test
- @DirtiesContext(methodMode = MethodMode.AFTER_METHOD)
- public void testSendMsg() throws Exception {
- MockEndpoint mockfile = camelContext.getEndpoint("mock:file:sapoutput", MockEndpoint.class);
- String msg="ABAP RFC TEST";
- mockfile.expectedBodiesReceived(msg);
- producerTemplate.sendBody("direct:saprfc", msg);
- mockfile.assertIsSatisfied();
- }
-}