Loading pom.xml +1 −1 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>fr.mines-stetienne.ci.saref</groupId> <artifactId>saref-pipeline</artifactId> <version>1.0.2</version> <version>1.0.3</version> <packaging>jar</packaging> <name>SAREF-Pipeline</name> Loading src/main/java/fr/mines_stetienne/ci/saref/managers/SiteManager.java +34 −0 Original line number Diff line number Diff line Loading @@ -32,7 +32,9 @@ import java.io.IOException; import java.io.StringWriter; import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; Loading @@ -57,6 +59,7 @@ import fr.mines_stetienne.ci.saref.entities.SAREFProject; import fr.mines_stetienne.ci.saref.entities.SAREFRepository; import fr.mines_stetienne.ci.saref.entities.SAREFTerm; import fr.mines_stetienne.ci.saref.entities.SAREFVersion; import fr.mines_stetienne.ci.saref.entities.SAREFVersionName; import fr.mines_stetienne.ci.saref.utils.StreamManagerFactory; import fr.mines_stetienne.ci.sparql_generate.SPARQLExt; import fr.mines_stetienne.ci.sparql_generate.engine.PlanFactory; Loading Loading @@ -235,6 +238,37 @@ public class SiteManager extends SAREFErrorLogger { writer.write(HTACCESS_PATH); writer.write(String.format("RewriteRule ^%s\\.([^\\./]+)$ %%1%s/%s.$1 [R=302]\n\n", project.getPath(), lastVersion.getVersionPath(), project.getOntologyFileName())); Set<SAREFVersionName> partialVersionNames = new HashSet<>(); for (SAREFVersionName versionName : repository.getVersions().keySet()) { int major = versionName.getMajor(); SAREFVersionName partialVersionNameMajor = new SAREFVersionName(major, Integer.MAX_VALUE, Integer.MAX_VALUE); if(!partialVersionNames.contains(partialVersionNameMajor)) { partialVersionNames.add(partialVersionNameMajor); SAREFVersion lastCompatibleVersion = repository.getVersion(repository.getPreviousVersion(partialVersionNameMajor)); // redirects core/v3 to core/v3.1.1/ writer.write(HTACCESS_PATH); writer.write( String.format("RewriteRule ^%s/v%s$ %%1%s/ [R=302]\n", project.getPath(), major, lastCompatibleVersion.getVersionName())); // redirects core/v3.ttl to core/v1.1.1.ttl writer.write(HTACCESS_PATH); writer.write(String.format("RewriteRule ^%s/v%s\\.([^\\./]+)$ %%1%s/%s.$1 [R=302]\n\n", project.getPath(), major, lastCompatibleVersion.getVersionPath(), project.getOntologyFileName())); } int minor = versionName.getMinor(); SAREFVersionName partialVersionNameMinor = new SAREFVersionName(major, minor, Integer.MAX_VALUE); if(!partialVersionNames.contains(partialVersionNameMinor)) { partialVersionNames.add(partialVersionNameMinor); SAREFVersion lastCompatibleVersion = repository.getVersion(repository.getPreviousVersion(partialVersionNameMinor)); // redirects core/v3.1 to core/v3.1.1/ writer.write(HTACCESS_PATH); writer.write( String.format("RewriteRule ^%s/v%s.%s$ %%1%s/ [R=302]\n", project.getPath(), major, minor, lastCompatibleVersion.getVersionName())); // redirects core/v3.1.ttl to core/v1.1.1.ttl writer.write(HTACCESS_PATH); writer.write(String.format("RewriteRule ^%s/v%s.%s\\.([^\\./]+)$ %%1%s/%s.$1 [R=302]\n\n", project.getPath(), major, minor, lastCompatibleVersion.getVersionPath(), project.getOntologyFileName())); } } for (SAREFVersion version : repository.getVersions().values()) { // redirects core/v3.1.1/ to core/v3.1.1/saref.conneg writer.write(HTACCESS_PATH); Loading Loading
pom.xml +1 −1 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>fr.mines-stetienne.ci.saref</groupId> <artifactId>saref-pipeline</artifactId> <version>1.0.2</version> <version>1.0.3</version> <packaging>jar</packaging> <name>SAREF-Pipeline</name> Loading
src/main/java/fr/mines_stetienne/ci/saref/managers/SiteManager.java +34 −0 Original line number Diff line number Diff line Loading @@ -32,7 +32,9 @@ import java.io.IOException; import java.io.StringWriter; import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; Loading @@ -57,6 +59,7 @@ import fr.mines_stetienne.ci.saref.entities.SAREFProject; import fr.mines_stetienne.ci.saref.entities.SAREFRepository; import fr.mines_stetienne.ci.saref.entities.SAREFTerm; import fr.mines_stetienne.ci.saref.entities.SAREFVersion; import fr.mines_stetienne.ci.saref.entities.SAREFVersionName; import fr.mines_stetienne.ci.saref.utils.StreamManagerFactory; import fr.mines_stetienne.ci.sparql_generate.SPARQLExt; import fr.mines_stetienne.ci.sparql_generate.engine.PlanFactory; Loading Loading @@ -235,6 +238,37 @@ public class SiteManager extends SAREFErrorLogger { writer.write(HTACCESS_PATH); writer.write(String.format("RewriteRule ^%s\\.([^\\./]+)$ %%1%s/%s.$1 [R=302]\n\n", project.getPath(), lastVersion.getVersionPath(), project.getOntologyFileName())); Set<SAREFVersionName> partialVersionNames = new HashSet<>(); for (SAREFVersionName versionName : repository.getVersions().keySet()) { int major = versionName.getMajor(); SAREFVersionName partialVersionNameMajor = new SAREFVersionName(major, Integer.MAX_VALUE, Integer.MAX_VALUE); if(!partialVersionNames.contains(partialVersionNameMajor)) { partialVersionNames.add(partialVersionNameMajor); SAREFVersion lastCompatibleVersion = repository.getVersion(repository.getPreviousVersion(partialVersionNameMajor)); // redirects core/v3 to core/v3.1.1/ writer.write(HTACCESS_PATH); writer.write( String.format("RewriteRule ^%s/v%s$ %%1%s/ [R=302]\n", project.getPath(), major, lastCompatibleVersion.getVersionName())); // redirects core/v3.ttl to core/v1.1.1.ttl writer.write(HTACCESS_PATH); writer.write(String.format("RewriteRule ^%s/v%s\\.([^\\./]+)$ %%1%s/%s.$1 [R=302]\n\n", project.getPath(), major, lastCompatibleVersion.getVersionPath(), project.getOntologyFileName())); } int minor = versionName.getMinor(); SAREFVersionName partialVersionNameMinor = new SAREFVersionName(major, minor, Integer.MAX_VALUE); if(!partialVersionNames.contains(partialVersionNameMinor)) { partialVersionNames.add(partialVersionNameMinor); SAREFVersion lastCompatibleVersion = repository.getVersion(repository.getPreviousVersion(partialVersionNameMinor)); // redirects core/v3.1 to core/v3.1.1/ writer.write(HTACCESS_PATH); writer.write( String.format("RewriteRule ^%s/v%s.%s$ %%1%s/ [R=302]\n", project.getPath(), major, minor, lastCompatibleVersion.getVersionName())); // redirects core/v3.1.ttl to core/v1.1.1.ttl writer.write(HTACCESS_PATH); writer.write(String.format("RewriteRule ^%s/v%s.%s\\.([^\\./]+)$ %%1%s/%s.$1 [R=302]\n\n", project.getPath(), major, minor, lastCompatibleVersion.getVersionPath(), project.getOntologyFileName())); } } for (SAREFVersion version : repository.getVersions().values()) { // redirects core/v3.1.1/ to core/v3.1.1/saref.conneg writer.write(HTACCESS_PATH); Loading