diff --git a/src/main/java/org/gcube/spatial/data/gis/GISInterface.java b/src/main/java/org/gcube/spatial/data/gis/GISInterface.java index 7cd7242..51b4bcf 100644 --- a/src/main/java/org/gcube/spatial/data/gis/GISInterface.java +++ b/src/main/java/org/gcube/spatial/data/gis/GISInterface.java @@ -107,12 +107,12 @@ public class GISInterface { public PublishResponse addGeoTIFF(String workspace, String storeName, String coverageName, File toPublishFile,String srs, ProjectionPolicy policy,String defaultStyle, double[] bbox, - Metadata geoNetworkMeta, String gnCategory,String gnStylesheet, LoginLevel level){ + Metadata geoNetworkMeta, String gnCategory,String gnStylesheet, LoginLevel level, boolean promoteMetadataPublishing){ try{ GeoNetworkPublisher gn=getGN(); gn.login(level); GNInsertConfiguration config=gn.getCurrentUserConfiguration(gnCategory, gnStylesheet); - return addGeoTIFF(workspace, storeName, coverageName, toPublishFile, srs, policy, defaultStyle, bbox, geoNetworkMeta, config, level); + return addGeoTIFF(workspace, storeName, coverageName, toPublishFile, srs, policy, defaultStyle, bbox, geoNetworkMeta, config, level,promoteMetadataPublishing); }catch(Exception e){ PublishResponse response=new PublishResponse(geoNetworkMeta); response.getMetaOperationMessages().add("Unable to get GN Configuration , cause :"+e.getMessage()); @@ -121,12 +121,12 @@ public class GISInterface { } public PublishResponse publishDBTable(String workspace, String storeName, GSFeatureTypeEncoder fte,GSLayerEncoder layerEncoder, - Metadata geoNetworkMeta, String gnCategory,String gnStylesheet,LoginLevel level){ + Metadata geoNetworkMeta, String gnCategory,String gnStylesheet,LoginLevel level, boolean promoteMetadataPublishing){ try{ GeoNetworkPublisher gn=getGN(); gn.login(level); GNInsertConfiguration config=gn.getCurrentUserConfiguration(gnCategory, gnStylesheet); - return publishDBTable(workspace, storeName, fte, layerEncoder, geoNetworkMeta, config, level); + return publishDBTable(workspace, storeName, fte, layerEncoder, geoNetworkMeta, config, level,promoteMetadataPublishing); }catch(Exception e){ PublishResponse response=new PublishResponse(geoNetworkMeta); response.getMetaOperationMessages().add("Unable to get GN Configuration , cause :"+e.getMessage()); @@ -143,7 +143,7 @@ public class GISInterface { public PublishResponse addGeoTIFF(String workspace, String storeName, String coverageName, File toPublishFile,String srs, ProjectionPolicy policy,String defaultStyle, double[] bbox, - Metadata geoNetworkMeta, GNInsertConfiguration config, LoginLevel level){ + Metadata geoNetworkMeta, GNInsertConfiguration config, LoginLevel level,boolean promoteMetadataPublishing){ boolean publishResult = false; PublishResponse toReturn=new PublishResponse(geoNetworkMeta); GeoServerRESTPublisher publisher=null; @@ -182,7 +182,7 @@ public class GISInterface { Metadata enriched=enricher.getEnriched(); toReturn.setPublishedMetadata(enriched); - long returnedId=pub.insertMetadata(config,enriched); + long returnedId=promoteMetadataPublishing?pub.insertAndPromoteMetadata(config, enriched):pub.insertMetadata(config,enriched); toReturn.setReturnedMetaId(returnedId); toReturn.setMetaOperationResult(OperationState.COMPLETE); @@ -218,7 +218,7 @@ public class GISInterface { } @Deprecated - public PublishResponse publishDBTable(String workspace, String storeName, GSFeatureTypeEncoder fte,GSLayerEncoder layerEncoder,Metadata geoNetworkMeta, GNInsertConfiguration config,LoginLevel level){ + public PublishResponse publishDBTable(String workspace, String storeName, GSFeatureTypeEncoder fte,GSLayerEncoder layerEncoder,Metadata geoNetworkMeta, GNInsertConfiguration config,LoginLevel level,boolean promoteMetadataPublishing){ boolean publishResult = false; PublishResponse toReturn=new PublishResponse(geoNetworkMeta); GeoServerRESTPublisher publisher=null; @@ -263,7 +263,7 @@ public class GISInterface { getGN().login(level); Metadata enriched=enricher.getEnriched(); toReturn.setPublishedMetadata(enriched); - long returnedId=pub.insertMetadata(config,enriched); + long returnedId=promoteMetadataPublishing?pub.insertAndPromoteMetadata(config, enriched):pub.insertMetadata(config,enriched); toReturn.setReturnedMetaId(returnedId); toReturn.setMetaOperationResult(OperationState.COMPLETE); }else {