Mongo testing
This commit is contained in:
parent
1d12a8f025
commit
4e19170a9f
|
@ -1,9 +1,14 @@
|
|||
package org.gcube.application.cms.tests;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.gcube.application.geoportal.common.utils.Files;
|
||||
import org.gcube.common.authorization.library.provider.AccessTokenProvider;
|
||||
import org.gcube.common.authorization.library.provider.SecurityTokenProvider;
|
||||
import org.gcube.common.scope.api.ScopeProvider;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.Properties;
|
||||
|
||||
@Slf4j
|
||||
|
@ -30,4 +35,11 @@ public class TokenSetter {
|
|||
}
|
||||
ScopeProvider.instance.set(scope);
|
||||
}
|
||||
|
||||
public static void setUma() throws IOException {
|
||||
File umaFile = new File("uma.json");
|
||||
String uma= Files.readFileAsString(umaFile.getAbsolutePath(), Charset.defaultCharset());
|
||||
AccessTokenProvider.instance.set(uma);
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -42,7 +42,7 @@ public class MongoTests {
|
|||
ImplementationProvider.get().setEngine(new MongoClientProvider() {
|
||||
@Override
|
||||
public Mongo getObject() throws ConfigurationException {
|
||||
TokenSetter.set("/gcube/devsec/devVRE");
|
||||
TokenSetter.set(GCubeTest.getContext());
|
||||
return super.getObject();
|
||||
}
|
||||
},Mongo.class);
|
||||
|
|
|
@ -0,0 +1,72 @@
|
|||
package org.gcube.application.geoportal.service.engine.providers;
|
||||
|
||||
import com.mongodb.client.MongoCollection;
|
||||
import com.mongodb.client.model.FindOneAndReplaceOptions;
|
||||
import com.mongodb.client.model.ReturnDocument;
|
||||
import org.bson.Document;
|
||||
import org.bson.types.ObjectId;
|
||||
import org.gcube.application.cms.serialization.Serialization;
|
||||
import org.gcube.application.cms.tests.TokenSetter;
|
||||
import org.gcube.application.cms.tests.model.BasicTests;
|
||||
import org.gcube.application.geoportal.common.model.JSONPathWrapper;
|
||||
import org.gcube.application.geoportal.common.model.legacy.Concessione;
|
||||
import org.gcube.application.geoportal.common.model.legacy.report.ValidationReport;
|
||||
import org.gcube.application.geoportal.common.model.rest.ConfigurationException;
|
||||
import org.gcube.application.geoportal.common.utils.tests.GCubeTest;
|
||||
import org.gcube.application.geoportal.service.engine.mongo.MongoManager;
|
||||
import org.gcube.application.geoportal.service.engine.postgis.PostgisIndex;
|
||||
import org.gcube.application.geoportal.service.model.internal.db.Mongo;
|
||||
import org.junit.Test;
|
||||
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import static com.mongodb.client.model.Filters.eq;
|
||||
import static com.mongodb.client.model.Updates.combine;
|
||||
import static com.mongodb.client.model.Updates.set;
|
||||
import static junit.framework.TestCase.assertNotNull;
|
||||
import static org.junit.Assume.assumeTrue;
|
||||
|
||||
public class MongoProviderTest extends BasicTests {
|
||||
|
||||
@Test
|
||||
public void getConfiguration() throws ConfigurationException {
|
||||
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
|
||||
TokenSetter.set(GCubeTest.getContext());
|
||||
MongoClientProvider provider = new MongoClientProvider();
|
||||
Mongo m = provider.getObject();
|
||||
System.out.println(m);
|
||||
assertNotNull(m);
|
||||
}
|
||||
|
||||
public void performManualUpdate() throws ConfigurationException {
|
||||
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
|
||||
TokenSetter.set(GCubeTest.getContext());
|
||||
MongoClientProvider provider = new MongoClientProvider();
|
||||
Mongo m = provider.getObject();
|
||||
MongoCollection c = m.getTheClient().getDatabase(m.getConnection().getDatabase()).
|
||||
getCollection("legacyConcessioni");
|
||||
|
||||
|
||||
c.find(eq("centroidLat",null))
|
||||
.forEach((Consumer) doc ->{
|
||||
try{
|
||||
Concessione record = Serialization.convert(doc, Concessione.class);
|
||||
record.setCentroidLat((record.getPosizionamentoScavo().getBbox().getMaxLat()+
|
||||
record.getPosizionamentoScavo().getBbox().getMinLat())/2);
|
||||
record.setCentroidLong((record.getPosizionamentoScavo().getBbox().getMaxLong()+
|
||||
record.getPosizionamentoScavo().getBbox().getMinLong())/2);
|
||||
|
||||
Document toSet = Document.parse(Serialization.write(record));
|
||||
toSet.put("_id",new ObjectId(record.getMongo_id()));
|
||||
|
||||
c.findOneAndUpdate(eq("_id",toSet.get("_id")),toSet);
|
||||
System.out.println("Updated "+record.getMongo_id()+" : "+record.getNome());
|
||||
}catch (Throwable e){
|
||||
e.printStackTrace(System.err);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
package org.gcube.application.cms.usecases;
|
||||
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.bson.Document;
|
||||
import org.gcube.application.cms.custom.gna.concessioni.model.ProfiledConcessione;
|
||||
|
@ -35,12 +36,18 @@ public class ExportConcessioniAsProjects {
|
|||
|
||||
|
||||
|
||||
|
||||
@SneakyThrows
|
||||
private static final Concessione read(File jsonFile) {
|
||||
log.info("Reading "+jsonFile.getAbsolutePath());
|
||||
String json= Files.readFileAsString(jsonFile.getAbsolutePath(), Charset.defaultCharset());
|
||||
return Serialization.read(json,Concessione.class);
|
||||
}
|
||||
|
||||
|
||||
public static void main(String[] args) throws InterruptedException {
|
||||
// read from imported folder
|
||||
File dir= new File("/Users/fabioisti/git/gcube-cms-suite/import1652276569045");
|
||||
// File dir= new File("/Users/fabioisti/git/gcube-cms-suite/import1652276569045");
|
||||
File dir = new File("/Users/fabioisti/Documents/Work/GNA DATA/Bug_23378");
|
||||
String targetContext="/gcube/devsec/devVRE";
|
||||
|
||||
|
||||
|
@ -49,15 +56,13 @@ public class ExportConcessioniAsProjects {
|
|||
|
||||
|
||||
ArrayList<Concessione> found=new ArrayList<>();
|
||||
for(File elementFolder:dir.listFiles())
|
||||
for(File jsonFile:elementFolder.listFiles((dir1, name) -> {return name.endsWith(".json");}))
|
||||
try {
|
||||
log.info("Reading "+jsonFile.getAbsolutePath());
|
||||
String json= Files.readFileAsString(jsonFile.getAbsolutePath(), Charset.defaultCharset());
|
||||
found.add(Serialization.read(json,Concessione.class));
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
for(File elementFolder:dir.listFiles()){
|
||||
if(elementFolder.isFile()&&elementFolder.getName().endsWith(".json"))
|
||||
found.add(read(elementFolder));
|
||||
else
|
||||
for(File jsonFile:elementFolder.listFiles((dir1, name) -> {return name.endsWith(".json");}))
|
||||
found.add(read(jsonFile));
|
||||
}
|
||||
|
||||
System.out.println("Loaded "+found.size()+" elements from "+dir.getAbsolutePath());
|
||||
|
||||
|
|
|
@ -35,8 +35,8 @@ public class ExportMongoConcessioni {
|
|||
public static void main(String[] args) {
|
||||
|
||||
File dir= new File("/Users/fabioisti/git/gcube-cms-suite/import1632326294149");
|
||||
String targetContext="/d4science.research-infrastructures.eu/D4OS/GeoNA-Prototype";
|
||||
// String targetContext= "/gcube/devsec/devVRE";
|
||||
// String targetContext="/d4science.research-infrastructures.eu/D4OS/GeoNA-Prototype";
|
||||
String targetContext= "/gcube/devsec/devVRE";
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
package org.gcube.application.cms.usecases;
|
||||
|
||||
import jdk.nashorn.internal.parser.Token;
|
||||
import org.gcube.application.cms.tests.TokenSetter;
|
||||
import org.gcube.application.geoportal.common.model.legacy.Concessione;
|
||||
import org.gcube.application.geoportal.common.rest.MongoConcessioni;
|
||||
import org.gcube.application.geoportal.common.utils.tests.GCubeTest;
|
||||
|
||||
|
||||
import static org.gcube.application.geoportal.client.plugins.GeoportalAbstractPlugin.mongoConcessioni;
|
||||
|
@ -10,9 +12,10 @@ import static org.gcube.application.geoportal.client.plugins.GeoportalAbstractPl
|
|||
public class RepublishSingle {
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
TokenSetter.set("/gcube/devsec/devVRE");
|
||||
TokenSetter.setUma();
|
||||
|
||||
String id="6137497102ad3d1f0cd6586b";
|
||||
|
||||
String id="6229364595184b06331b860b";
|
||||
|
||||
MongoConcessioni manager=mongoConcessioni().build();
|
||||
|
||||
|
|
Loading…
Reference in New Issue