Add seed code for sdnr app based on ONF Centennial
[ccsdk/apps.git] / sdnr / wireless-transport / code-Carbon-SR1 / apps / helpServer / impl / src / main / test / SimpleTests.java
1 import java.io.File;
2 import java.nio.file.Path;
3 import java.util.ArrayList;
4 import java.util.Iterator;
5 import org.json.JSONArray;
6 import org.json.JSONObject;
7
8 import com.highstreet.technologies.helpserver.data.HelpInfrastructureObject;
9
10 public class SimpleTests {
11
12
13         private static void testURI()
14         {
15                 String uri="/ms/1/api/";
16                 String query="task=getconfig";
17
18                 long id=0;
19                 String remoteUrl="";
20                 uri = uri.substring("/ms/".length());
21
22                 try {
23                         id = Long.parseLong(uri.substring(0, uri.indexOf("/")));
24                         uri=uri.substring(uri.indexOf("/"));
25                 } catch (Exception err) {
26                         System.out.println(err.getMessage());
27                 }
28
29                 if(id>0)
30                 {
31                 remoteUrl=baseUrl(id)+uri;
32                 if (query != null && query.length() > 0)
33                         remoteUrl += "?" + query;
34                 }
35                 System.out.println("url="+remoteUrl);
36         }
37         private static void testMSDBDataParser()
38         {
39                 String resp="{\"took\":6,\"timed_out\":false,\"_shards\":{\"total\":5,\"successful\":5,\"failed\":0},\"hits\":{\"total\":2,\"max_score\":1.0,\"hits\":[{\"_index\":\"mwtn_v1\",\"_type\":\"mediator-server\",\"_id\":\"2\",\"_score\":1.0,\"_source\":{\"id\":2,\"name\":\"Server 2\",\"url\":\"http://mediatorsnmp.fritz.box:7070\"}},{\"_index\":\"mwtn_v1\",\"_type\":\"mediator-server\",\"_id\":\"1\",\"_score\":1.0,\"_source\":{\"id\":1,\"name\":\"Server 1\",\"url\":\"http://192.168.11.44:7070\"}}]}}";
40                 JSONObject ro=new JSONObject(resp);
41                 JSONArray a=ro.getJSONObject("hits").getJSONArray("hits");
42                 for(int i=0;i<a.length();i++)
43                 {
44                         JSONObject x=a.getJSONObject(i).getJSONObject("_source");
45                         System.out.println("id="+x.getLong("id")+" name=\""+x.getString("name")+"\" url=\""+x.getString("url")+"\"");
46                 }
47
48         }
49
50          public static void walk(ArrayList<File> results, String path ) {
51
52                 File root = new File( path );
53                 File[] list = root.listFiles();
54
55                 if (list == null) return;
56
57                 for ( File f : list ) {
58                     if ( f.isDirectory() ) {
59                         walk(results, f.getAbsolutePath() );
60                         //System.out.println( "Dir:" + f.getAbsoluteFile() );
61                     }
62                     else {
63                         //System.out.println( "File:" + f.getAbsoluteFile() );
64                         if(f.isFile() && f.getName().endsWith(".md") )
65                                 results.add(f);
66                     }
67                 }
68             }
69         private static void testFindMDs()
70         {
71                 final String BASEURI = "/help";
72                 final int MAX_DEPTH = 10;
73                 String uri="/help/";//req.getRequestURI();
74                 Path basePath=new File("/home/herbert/odl/distribution-karaf-0.5.3-Boron-SR3").toPath();
75                 uri=uri.substring(BASEURI.length());
76                 try
77                 {
78                         ArrayList<File> mdfiles=new ArrayList<>();
79                         walk(mdfiles,basePath.toAbsolutePath().toString());
80                         JSONArray a=new JSONArray();
81                         Iterator<File> it=mdfiles.iterator();
82                         while(it.hasNext())
83                                 a.put(it.next().toString().substring(basePath.toAbsolutePath().toString().length()));
84                         //resp.getOutputStream().println(a.toString());
85                         System.out.println(a.toString());
86
87                 }
88                 catch(Exception err)
89                 {
90                         err.printStackTrace();
91                 }
92         }
93         private static void folderTests()
94         {
95                 Path basePath=new File("/home/herbert/odl/distribution-karaf-0.5.3-Boron-SR3").toPath();
96                 Path pHelp=basePath.resolve("help/");
97                 String uri="0.1.0-SNAPSHOT/OpenDaylight";
98                 System.out.println("phelp="+pHelp.toString());
99                 Path pUri=pHelp.resolve(uri);
100                 System.out.println("puri="+pUri.toString());
101         }
102         public static void folderTests2()
103         {
104                 try
105                 {
106                         HelpInfrastructureObject o =new HelpInfrastructureObject(new File("/home/herbert/odl/distribution-karaf-0.5.3-Boron-SR3/help").toPath());
107
108                 System.out.println(o.toString());
109                 }
110                 catch(Exception e )
111                 {
112                         e.printStackTrace();
113                 }
114         }
115
116         public static void folderCreateTestFromRes()
117         {
118                 HelpInfrastructureObject.createFilesFromResources();
119         }
120
121         private static String getVersionFromRequestedUri(String uri) {
122                 if(uri==null)
123                         return null;
124                 int lastidx=uri.lastIndexOf("/");
125                 if(lastidx<0)
126                         return null;
127                 int slastidx=uri.lastIndexOf("/", lastidx-1);
128                 if(slastidx<0)
129                         return null;
130                 return uri.substring(slastidx+1, lastidx);
131
132         }
133         public static void testUriVersionExtract()
134         {
135                 String uri="help/test2/folder4/0.4.1/README.md";
136                 String version=getVersionFromRequestedUri(uri);
137                 System.out.println("uri="+uri);
138                 System.out.println("version="+version);
139         }
140         public static void main(String[] args)
141         {
142                 //testURI();
143                 //testMSDBDataParser();
144                 //testFindMDs();
145                 //folderTests2();
146                 //folderCreateTestFromRes();
147                 testUriVersionExtract();
148         }
149
150         private static String baseUrl(long id) {
151                 return "http://test.tld:7021";
152         }
153 }