Skip to content

Commit 156979d

Browse files
committed
SSS-349
1 parent 2ae75c3 commit 156979d

File tree

3 files changed

+36
-4
lines changed

3 files changed

+36
-4
lines changed

servs/filerepo/filerepo.datatypes/src/main/java/at/kc/tugraz/ss/service/filerepo/datatypes/SSFile.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,20 +85,22 @@ protected SSFile(
8585

8686
public static SSFile get(
8787
final SSUri id,
88+
final SSEntityE type,
8889
final SSFileExtE fileExt,
8990
final SSMimeTypeE mimeType,
9091
final SSUri downloadLink) throws Exception{
9192

92-
return new SSFile(id, fileExt, mimeType, downloadLink);
93+
return new SSFile(id, type, fileExt, mimeType, downloadLink);
9394
}
9495

9596
public SSFile(
9697
final SSUri id,
98+
final SSEntityE type,
9799
final SSFileExtE fileExt,
98100
final SSMimeTypeE mimeType,
99101
final SSUri downloadLink) throws Exception{
100102

101-
super(id, SSEntityE.file);
103+
super(id, type);
102104

103105
this.fileExt = fileExt;
104106
this.mimeType = mimeType;

servs/filerepo/filerepo.impl/src/main/java/at/kc/tugraz/ss/service/filerepo/impl/SSFilerepoImpl.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -397,10 +397,12 @@ public SSFile fileGet(final SSFileGetPar par) throws Exception{
397397
SSFileU.correctDirPath(SSVocConf.restAPIResourceFile) +
398398
SSFileU.correctDirPath(SSVocConf.fileIDFromSSSURI(par.file)) +
399399
SSVocConf.restAPIPathFileDownloadPublic);
400+
final SSEntityE fileType = sqlFct.getFileType(par.file);
400401

401402
final SSFile file =
402403
SSFile.get(
403-
par.file,
404+
par.file,
405+
fileType,
404406
fileExt,
405407
mimeType,
406408
downloadLink);

servs/filerepo/filerepo.impl/src/main/java/at/kc/tugraz/ss/service/filerepo/impl/fct/SSFileSQLFct.java

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
package at.kc.tugraz.ss.service.filerepo.impl.fct;
2222

2323
import at.tugraz.sss.serv.SSDBSQLFct;
24+
import at.tugraz.sss.serv.SSEntityE;
2425
import at.tugraz.sss.serv.SSErr;
2526
import at.tugraz.sss.serv.SSErrE;
2627
import at.tugraz.sss.serv.SSObjU;
@@ -108,4 +109,31 @@ public void addFileToEntity(
108109
SSServErrReg.regErrThrow(error);
109110
}
110111
}
111-
}
112+
113+
public SSEntityE getFileType(final SSUri file) throws Exception{
114+
115+
ResultSet resultSet = null;
116+
117+
try{
118+
119+
final List<String> columns = new ArrayList<>();
120+
final Map<String, String> wheres = new HashMap<>();
121+
122+
column(columns, SSSQLVarNames.type);
123+
124+
where(wheres, SSSQLVarNames.id, file);
125+
126+
resultSet = dbSQL.select(SSSQLVarNames.entityTable, columns, wheres, null, null, null);
127+
128+
checkFirstResult(resultSet);
129+
130+
return bindingStrToEntityType(resultSet, SSSQLVarNames.type);
131+
132+
}catch(Exception error){
133+
SSServErrReg.regErrThrow(error);
134+
return null;
135+
}finally{
136+
dbSQL.closeStmt(resultSet);
137+
}
138+
}
139+
}

0 commit comments

Comments
 (0)