Skip to content

Commit b3ee307

Browse files
committed
markdown table, linked from readme
1 parent 118cd34 commit b3ee307

File tree

3 files changed

+72
-2
lines changed

3 files changed

+72
-2
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ We just re-implemented in different languages, and put them behind a web service
6868
For the RESTful APIs, each API has an endpoint where the OpenAPI/Swagger schemas can be downloaded from.
6969
For simplicity, all schemas are also available as JSON/YML files under the folder [openapi-swagger](./openapi-swagger).
7070

71+
More details (e.g., #LOCs and used databases) on these APIs can be found [in this table](statistics/table_emb.md).
72+
7173
### REST: Java/Kotlin
7274

7375
* Genome Nexus (MIT), [jdk_8_maven/cs/rest-gui/genome-nexus](jdk_8_maven/cs/rest-gui/genome-nexus), from [https://github.com/genome-nexus/genome-nexus](https://github.com/genome-nexus/genome-nexus)

statistics/analyze.R

Lines changed: 44 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,56 @@
11

2-
#NAME,TYPE,LANGUAGE,FILES,LOCS,DATABASE,LICENSE,ENDPOINTS,URL
2+
#EMB,NAME,TYPE,LANGUAGE,RUNTIME,BUILD,FILES,LOCS,DATABASE,LICENSE,ENDPOINTS,URL
33
DATA_FILE="./data.csv"
44

5+
UNDEFINED = "UNDEFINED"
6+
7+
handleMultiValues <- function(s){
8+
return(gsub(";", ", ", s))
9+
}
10+
11+
markdown <- function (){
12+
13+
dt <- read.csv(DATA_FILE,header=T)
14+
15+
dt = dt[order(dt$TYPE, dt$LANGUAGE, -dt$LOCS, dt$NAME),]
16+
# skip industrial APIs that are not stored in EMB
17+
dt = dt[dt$EMB==TRUE,]
18+
19+
TABLE = "./table_emb.md"
20+
unlink(TABLE)
21+
sink(TABLE, append = TRUE, split = TRUE)
22+
23+
#EMB,NAME,TYPE,LANGUAGE,RUNTIME,BUILD,FILES,LOCS,DATABASE,LICENSE,ENDPOINTS,URL
24+
cat("|Name|Type|#LOCs|#SourceFiles|#Endpoints|Language(s)|Runtime|Build Tool|Database(s)|\n")
25+
cat("|----|----|----:|-----------:|---------:|-----------|-------|----------|-----------|\n")
26+
27+
for (i in 1:nrow(dt)){
28+
29+
row = dt[i,]
30+
cat("|__",row$NAME,"__|",sep="")
31+
32+
cat(row$TYPE,"|",sep="")
33+
cat(row$LOCS,"|",sep="")
34+
cat(row$FILES,"|",sep="")
35+
cat(row$ENDPOINTS,"|",sep="")
36+
cat(handleMultiValues(row$LANGUAGE),"|",sep="")
37+
cat(row$RUNTIME,"|",sep="")
38+
cat(row$BUILD,"|",sep="")
39+
cat(handleMultiValues(row$DATABASE),"|",sep="")
40+
cat("\n")
41+
}
42+
43+
sink()
44+
}
45+
46+
547
oldLatexTable <- function(){
648

749
dt <- read.csv(DATA_FILE,header=T)
850

951
dt = dt[order(dt$TYPE, dt$LANGUAGE, -dt$LOCS, dt$NAME),]
1052

11-
TABLE = "./statistics_table_emb.tex"
53+
TABLE = "./old_statistics_table_emb.tex"
1254
unlink(TABLE)
1355
sink(TABLE, append = TRUE, split = TRUE)
1456

statistics/table_emb.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
|Name|Type|#LOCs|#SourceFiles|#Endpoints|Language(s)|Runtime|Build Tool|Database(s)|
2+
|----|----|----:|-----------:|---------:|-----------|-------|----------|-----------|
3+
|__timbuctoo__|GraphQL|107729|1113|18|Java|JDK 11|Maven|Neo4j|
4+
|__patio-api__|GraphQL|18048|178|20|Java|JDK 11|Gradle|PostgreSQL|
5+
|__petclinic-graphql__|GraphQL|5212|89|15|Java|JDK 8|Maven|PostgreSQL|
6+
|__graphql-scs__|GraphQL|577|13|11|Kotlin|JDK 8|Maven||
7+
|__graphql-ncs__|GraphQL|548|8|6|Kotlin|JDK 8|Maven||
8+
|__signal-registration__|gRPC|13652|177|5|Java|JDK 17|Maven||
9+
|__grpc-scs__|gRPC|894|14|11|Java|JDK 8|Maven||
10+
|__grpc-ncs__|gRPC|638|9|6|Java|JDK 8|Maven||
11+
|__languagetool__|REST|174781|1385|2|Java|JDK 8|Maven||
12+
|__ocvn__|REST|45521|526|258|Java|JDK 8|Maven|H2, MongoDB|
13+
|__genome-nexus__|REST|30004|405|23|Java|JDK 8|Maven|MongoDB|
14+
|__market__|REST|9861|124|13|Java|JDK 11|Maven|H2|
15+
|__scout-api__|REST|9736|93|49|Java|JDK 8|Maven|H2|
16+
|__catwatch__|REST|9636|106|14|Java|JDK 8|Maven|H2|
17+
|__proxyprint__|REST|8338|73|74|Java|JDK 8|Maven|H2|
18+
|__cwa-verification__|REST|3955|47|5|Java|JDK 11|Maven|H2|
19+
|__gestaohospital__|REST|3506|33|20|Java|JDK 8|Maven|MongoDB|
20+
|__features-service__|REST|2275|39|18|Java|JDK 8|Maven|H2|
21+
|__restcountries__|REST|1977|24|22|Java|JDK 8|Maven||
22+
|__rest-scs__|REST|862|13|11|Java|JDK 8|Maven||
23+
|__rest-ncs__|REST|605|9|6|Java|JDK 8|Maven||
24+
|__rest-news__|REST|857|11|7|Kotlin|JDK 8|Maven|H2|
25+
|__thrift-scs__|Thrift|772|14|11|Java|JDK 8|Maven||
26+
|__thrift-ncs__|Thrift|585|9|6|Java|JDK 8|Maven||

0 commit comments

Comments
 (0)