This commit is contained in:
Fabio Sinibaldi 2022-11-23 14:31:36 +01:00
parent cdff7547a5
commit fc638de33c
2 changed files with 82 additions and 56 deletions

View File

@ -45,10 +45,12 @@ public class ClearProjects {
Iterator<Project> it=null; Iterator<Project> it=null;
String queryString = String.format("{\"_theDocument.nome\" :{\"$eq\" : \"Landro (Comune di Tambre, BL) \"},\"_theDocument.dataInizioProgetto\":{\"$eq\":\"2021-05-29T00:00:00\"}}\n" +
"}");
QueryRequest q = new QueryRequest(); QueryRequest q = new QueryRequest();
q.setFilter(Document.parse(queryString));
// String queryString = String.format("{\"_theDocument.nome\" :{\"$eq\" : \"Landro (Comune di Tambre, BL) \"},\"_theDocument.dataInizioProgetto\":{\"$eq\":\"2021-05-29T00:00:00\"}}\n" +
// "}");
// q.setFilter(Document.parse(queryString));
//
it=client.query(q); it=client.query(q);

View File

@ -26,6 +26,7 @@ import org.gcube.application.geoportal.common.utils.tests.GCubeTest;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.rmi.RemoteException; import java.rmi.RemoteException;
import java.sql.SQLOutput;
import java.time.Instant; import java.time.Instant;
import java.util.*; import java.util.*;
import java.util.concurrent.*; import java.util.concurrent.*;
@ -33,6 +34,7 @@ import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicLong;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Supplier; import java.util.function.Supplier;
import java.util.regex.Matcher;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static org.gcube.application.geoportal.client.plugins.GeoportalAbstractPlugin.projects; import static org.gcube.application.geoportal.client.plugins.GeoportalAbstractPlugin.projects;
@ -46,6 +48,7 @@ public class ExportConcessioniAsProjects {
public static void main(String[] args) throws InterruptedException, IOException { public static void main(String[] args) throws InterruptedException, IOException {
// read from imported folder // read from imported folder
File dir= new File("/Users/fabioisti/git/gcube-cms-suite/import1668778302348"); File dir= new File("/Users/fabioisti/git/gcube-cms-suite/import1668778302348");
@ -77,12 +80,29 @@ public class ExportConcessioniAsProjects {
Files.saveString(importFolder.sort(),new File(dir,"relationships.csv").toPath()); Files.saveString(importFolder.sort(),new File(dir,"relationships.csv").toPath());
TokenSetter.set(GCubeTest.getContext());
if(!pushProjects){ if(!pushProjects){
System.out.println("PUSH PROJECTS FLAG IS FALSE.. CLOSING."); System.out.println("PUSH PROJECTS FLAG IS FALSE.. CLOSING.");
StringBuilder reportBuilder = new StringBuilder();
StringBuilder concReportBuilder = new StringBuilder();
importFolder.getRelationshipMap().forEach((s,l)->{
l.forEach(c->concReportBuilder.append(c.getReport().getStatus()+","+c.getReport().getWarningMessages()+","+c.getMongo_id()+","+c.getNome()+"\n"));
try {
// reportBuilder.append(getExisting(l.get(0),client).size()+","+s+"\n");
} catch (Throwable e) {
log.error("Unable to get count for {} ",s,e);
throw new RuntimeException(e);
}
});
Files.saveString(reportBuilder.toString(),new File(dir,"found.csv").toPath());
Files.saveString(concReportBuilder.toString(),new File(dir,"originalStatuses.csv").toPath());
System.exit(0); System.exit(0);
} }
TokenSetter.set(GCubeTest.getContext());
// StorageUtils storage = new StorageUtils(); // StorageUtils storage = new StorageUtils();
@ -112,7 +132,7 @@ public class ExportConcessioniAsProjects {
if(delete.get()){ if(delete.get()){
log.debug("Deleting error set for {}",c.getNome()); log.debug("Deleting error set for {}",c.getNome());
for (Project project : existing) { for (Project project : existing) {
client.deleteById(project.getId()); client.deleteById(project.getId(),true);
} }
}else publish.set(false); }else publish.set(false);
} }
@ -450,56 +470,60 @@ public class ExportConcessioniAsProjects {
public static String quote(String string) { public static String quote(String string) {
if (string == null || string.length() == 0) { if(string!=null)
return "\"\""; // return "\""+string.replaceAll("\"","\"")+"\"";
} return "\""+string.replaceAll("\"",Matcher.quoteReplacement("\\\""))+"\"";
else return "\"\"";
char c = 0; // if (string == null || string.length() == 0) {
int i; // return "\"\"";
int len = string.length(); // }
StringBuilder sb = new StringBuilder(len + 4); //
String t; // char c = 0;
// int i;
sb.append('"'); // int len = string.length();
for (i = 0; i < len; i += 1) { // StringBuilder sb = new StringBuilder(len + 4);
c = string.charAt(i); // String t;
switch (c) { //
case '\\': // sb.append('"');
case '"': // for (i = 0; i < len; i += 1) {
sb.append('\\'); // c = string.charAt(i);
sb.append(c); // switch (c) {
break; // case '\\':
case '/': // case '"':
// if (b == '<') { // sb.append('\\');
sb.append('\\'); // sb.append(c);
// } // break;
sb.append(c); // case '/':
break; // // if (b == '<') {
case '\b': // sb.append('\\');
sb.append("\\b"); // // }
break; // sb.append(c);
case '\t': // break;
sb.append("\\t"); // case '\b':
break; // sb.append("\\b");
case '\n': // break;
sb.append("\\n"); // case '\t':
break; // sb.append("\\t");
case '\f': // break;
sb.append("\\f"); // case '\n':
break; // sb.append("\\n");
case '\r': // break;
sb.append("\\r"); // case '\f':
break; // sb.append("\\f");
default: // break;
if (c < ' ') { // case '\r':
t = "000" + Integer.toHexString(c); // sb.append("\\r");
sb.append("\\u" + t.substring(t.length() - 4)); // break;
} else { // default:
sb.append(c); // if (c < ' ') {
} // t = "000" + Integer.toHexString(c);
} // sb.append("\\u" + t.substring(t.length() - 4));
} // } else {
sb.append('"'); // sb.append(c);
return sb.toString(); // }
// }
// }
// sb.append('"');
// return sb.toString();
} }
} }