Skip to content

Commit 897312d

Browse files
committed
LL-1151
1 parent 7cd26e2 commit 897312d

File tree

3 files changed

+48
-5
lines changed

3 files changed

+48
-5
lines changed

servs/dataimport/dataimport.impl/src/main/java/at/kc/tugraz/ss/serv/dataimport/impl/SSDataImportImpl.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,10 @@
8080

8181
public class SSDataImportImpl extends SSServImplWithDBA implements SSDataImportClientI, SSDataImportServerI{
8282

83-
private static final ReentrantReadWriteLock bitsAndPiecesImportsLock = new ReentrantReadWriteLock();
84-
private static final Map<Thread, String> bitsAndPiecesImports = new HashMap<>();
83+
public static final Integer bitsAndPiecesImageMinWidth = 250;
84+
public static final Integer bitsAndPiecesImageMinHeight = 250;
85+
private static final ReentrantReadWriteLock bitsAndPiecesImportsLock = new ReentrantReadWriteLock();
86+
private static final Map<Thread, String> bitsAndPiecesImports = new HashMap<>();
8587

8688
private final SSDataImportSQLFct sqlFct;
8789

servs/dataimport/dataimport.impl/src/main/java/at/kc/tugraz/ss/serv/dataimport/impl/bitsandpieces/SSDataImportBitsAndPiecesEvernoteImporter.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import at.tugraz.sss.serv.SSSpaceE;
3131
import at.tugraz.sss.serv.SSToolContextE;
3232
import at.kc.tugraz.ss.serv.dataimport.datatypes.pars.SSDataImportBitsAndPiecesPar;
33+
import at.kc.tugraz.ss.serv.dataimport.impl.SSDataImportImpl;
3334
import at.kc.tugraz.ss.serv.dataimport.impl.evernote.SSDataImportEvernoteNoteContentHandler;
3435
import at.kc.tugraz.ss.serv.datatypes.entity.api.SSEntityServerI;
3536
import at.kc.tugraz.ss.serv.jobs.evernote.api.SSEvernoteServerI;
@@ -411,6 +412,7 @@ private void handleResources() throws Exception{
411412
resourceWithContent = SSServCaller.evernoteResourceGet (evernoteInfo.noteStore, resource.getGuid(), false);
412413

413414
try{
415+
414416
if(SSFileExtE.isImageFileExt(SSMimeTypeE.fileExtForMimeType1(resourceWithContent.getMime()))){
415417

416418
if(resourceWithContent.getAttributes().isSetSourceURL()){
@@ -427,10 +429,10 @@ private void handleResources() throws Exception{
427429
}
428430

429431
if(
430-
resourceWithContent.getWidth() <= 250||
431-
resourceWithContent.getHeight() <= 250){
432+
resourceWithContent.getWidth() <= SSDataImportImpl.bitsAndPiecesImageMinWidth ||
433+
resourceWithContent.getHeight() <= SSDataImportImpl.bitsAndPiecesImageMinHeight){
432434

433-
SSLogU.info("evernote image resource height or width < 250");
435+
SSLogU.info("evernote image resource height or width < " + SSDataImportImpl.bitsAndPiecesImageMinWidth);
434436
continue;
435437
}
436438
}

servs/dataimport/dataimport.impl/src/main/java/at/kc/tugraz/ss/serv/dataimport/impl/bitsandpieces/SSDataImportBitsAndPiecesMailImporter.java

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
package at.kc.tugraz.ss.serv.dataimport.impl.bitsandpieces;
2222

2323
import at.kc.tugraz.ss.serv.dataimport.datatypes.pars.SSDataImportBitsAndPiecesPar;
24+
import at.kc.tugraz.ss.serv.dataimport.impl.SSDataImportImpl;
2425
import at.kc.tugraz.ss.serv.datatypes.entity.api.SSEntityServerI;
2526
import at.kc.tugraz.ss.serv.voc.conf.SSVocConf;
2627
import at.kc.tugraz.ss.service.filerepo.api.SSFileRepoServerI;
@@ -34,13 +35,17 @@
3435
import at.tugraz.sss.serv.SSLogU;
3536
import at.tugraz.sss.serv.SSServErrReg;
3637
import at.tugraz.sss.serv.SSServReg;
38+
import at.tugraz.sss.serv.SSStrU;
3739
import at.tugraz.sss.serv.SSUri;
3840
import at.tugraz.sss.serv.caller.SSServCaller;
3941
import at.tugraz.sss.servs.entity.datatypes.par.SSEntityGetPar;
4042
import at.tugraz.sss.servs.file.datatype.par.SSEntityFileAddPar;
4143
import at.tugraz.sss.servs.mail.SSMailServerI;
4244
import at.tugraz.sss.servs.mail.datatype.SSMail;
4345
import at.tugraz.sss.servs.mail.datatype.par.SSMailsReceivePar;
46+
import java.awt.image.BufferedImage;
47+
import java.io.File;
48+
import javax.imageio.ImageIO;
4449
import sss.serv.eval.api.SSEvalServerI;
4550

4651
public class SSDataImportBitsAndPiecesMailImporter {
@@ -232,6 +237,10 @@ private void handleMailContentMultimedia(
232237

233238
for(SSEntity attachment : mail.contentMultimedia){
234239

240+
if(!areResourceDimensionsOk(attachment.id)){
241+
continue;
242+
}
243+
235244
resourceUri = SSServCaller.vocURICreate();
236245

237246
miscFct.addResource(
@@ -276,6 +285,10 @@ private void handleMailAttachments(
276285

277286
for(SSEntity attachment : mail.attachments){
278287

288+
if(!areResourceDimensionsOk(attachment.id)){
289+
continue;
290+
}
291+
279292
resourceUri = SSServCaller.vocURICreate();
280293

281294
miscFct.addResource(
@@ -309,4 +322,30 @@ private void handleMailAttachments(
309322
SSServErrReg.regErrThrow(error);
310323
}
311324
}
325+
326+
private Boolean areResourceDimensionsOk(final SSUri resource) throws Exception{
327+
328+
try{
329+
330+
if(!SSFileExtE.isImageFileExt(SSFileExtE.getFromStrToFormat(SSStrU.toStr(resource)))){
331+
return true;
332+
}
333+
334+
final BufferedImage image = ImageIO.read(new File(localWorkPath + SSVocConf.fileIDFromSSSURI(resource)));
335+
336+
if(
337+
image.getWidth() <= SSDataImportImpl.bitsAndPiecesImageMinWidth ||
338+
image.getHeight() <= SSDataImportImpl.bitsAndPiecesImageMinHeight){
339+
340+
SSLogU.info("mail attachment height or width < " + SSDataImportImpl.bitsAndPiecesImageMinWidth);
341+
return false;
342+
}
343+
344+
return true;
345+
346+
}catch(Exception error){
347+
SSServErrReg.regErrThrow(error);
348+
return false;
349+
}
350+
}
312351
}

0 commit comments

Comments
 (0)