Impossible to post an asset when no asset are present in the project #184

This commit is contained in:
nheron 2020-11-14 17:01:31 +01:00
commit c6146c81a9
2 changed files with 24 additions and 1 deletions

View file

@ -354,7 +354,10 @@ public class PackageResource {
}
} else {//
if (isCreate) {
org.uberfire.java.nio.file.Path directoryWhereCreateAsset = assetService.getRuleDirectory(directoryStream, assetName);
String targetName = projectName.replace("-","_").replace(" ","_");
org.uberfire.java.nio.file.Path ressourcesPath = nioPath.resolve("src/main/resources");
DirectoryStream<org.uberfire.java.nio.file.Path> directoryStreamBase = ioService.newDirectoryStream(ressourcesPath);
org.uberfire.java.nio.file.Path directoryWhereCreateAsset = assetService.getRuleDirectoryByName(directoryStreamBase, targetName);
if (directoryWhereCreateAsset != null) {
URI parentURI = directoryWhereCreateAsset.getParent().toUri();

View file

@ -260,6 +260,26 @@ public class AssetService {
return null;
}
public org.uberfire.java.nio.file.Path getRuleDirectoryByName(DirectoryStream<org.uberfire.java.nio.file.Path> directoryStream, String assetName) {
for (org.uberfire.java.nio.file.Path elementPath : directoryStream) {
if (elementPath.getFileName().toString().equals(assetName)) {
return elementPath;
}
if (org.uberfire.java.nio.file.Files.isDirectory(elementPath)) {
DirectoryStream<org.uberfire.java.nio.file.Path> adirectoryStream = ioService.newDirectoryStream(elementPath);
org.uberfire.java.nio.file.Path foundElementPath = getRuleDirectoryByName(adirectoryStream, assetName);
if (foundElementPath != null) {
return foundElementPath;
}
} else {
if (elementPath.getFileName().toString().equals(assetName)) {
return elementPath;
}
}
}
return null;
}
public org.uberfire.java.nio.file.Path getDirectoryElementPath(DirectoryStream<org.uberfire.java.nio.file.Path> directoryStream, String assetName) {
for (org.uberfire.java.nio.file.Path elementPath : directoryStream) {
if (org.uberfire.java.nio.file.Files.isDirectory(elementPath)) {