diff --git a/org.fortiss.tooling.kernel/src/org/fortiss/tooling/kernel/internal/.ratings b/org.fortiss.tooling.kernel/src/org/fortiss/tooling/kernel/internal/.ratings index 25fd4da8c8df9a8b5effef7cd093b227928c0b66..8f46f5655d5d549080d4be0872e3ea304e1e30d7 100644 --- a/org.fortiss.tooling.kernel/src/org/fortiss/tooling/kernel/internal/.ratings +++ b/org.fortiss.tooling.kernel/src/org/fortiss/tooling/kernel/internal/.ratings @@ -1,7 +1,7 @@ CommandStackService.java 957bda69b5feb91f002aed4d25ed334e92801e7e GREEN ConnectionCompositorService.java d69a60cd7a3d06e91d24fd32b9c00125ea71e0dd GREEN ConstraintCheckerService.java 459b5eb717598e7e8bb71a0c87e57ea85cb00e4b GREEN -ConstraintService.java d869107b1cef404bc5e27edd7d30fc2ea86a0427 GREEN +ConstraintService.java 139187909523300c80a22be920329f1c9d0fb654 YELLOW DummyTopLevelElement.java 42ae59a6a89a57035644d04f9f0f2d674797642a GREEN ElementCompositorService.java 98c5d27e09881e60aa4f87c1ac0c7787cdec9f7c GREEN LibraryPrototypeProvider.java b77eddbdca78f561ffb1233e98817be361c690ae GREEN diff --git a/org.fortiss.tooling.kernel/src/org/fortiss/tooling/kernel/internal/ConstraintService.java b/org.fortiss.tooling.kernel/src/org/fortiss/tooling/kernel/internal/ConstraintService.java index d869107b1cef404bc5e27edd7d30fc2ea86a0427..139187909523300c80a22be920329f1c9d0fb654 100644 --- a/org.fortiss.tooling.kernel/src/org/fortiss/tooling/kernel/internal/ConstraintService.java +++ b/org.fortiss.tooling.kernel/src/org/fortiss/tooling/kernel/internal/ConstraintService.java @@ -202,11 +202,10 @@ public final class ConstraintService implements IIntrospectiveKernelService, ICo return null; } ByteArrayOutputStream baos = new ByteArrayOutputStream(); - final ObjectOutputStream oos; final EObject hashRelevant = getChecksumRelevantEObject(constrained, ci); - try { + try(ObjectOutputStream oos = new ObjectOutputStream(baos)) { final ResourceSet rset = new ResourceSetImpl(); - oos = new ObjectOutputStream(baos); + Resource resource = rset.createResource(URI.createURI("temp")); resource.getContents().add(hashRelevant); Map<String, String> options = new HashMap<>(); @@ -217,7 +216,6 @@ public final class ConstraintService implements IIntrospectiveKernelService, ICo options.put(OPTION_PROCESS_DANGLING_HREF, OPTION_PROCESS_DANGLING_HREF_DISCARD); resource.save(oos, options); - oos.close(); MessageDigest m = MessageDigest.getInstance("SHA1"); m.update(baos.toByteArray()); BigInteger res = new BigInteger(1, m.digest()); @@ -227,11 +225,11 @@ public final class ConstraintService implements IIntrospectiveKernelService, ICo String nameCstrd = constrained instanceof INamedElement ? ((INamedElement)constrained).getName() : constrained.toString(); String fileName = filePrefix + "_" + nameCstr + "_" + nameCstrd + ".xml"; - FileOutputStream file = new FileOutputStream(fileName); - ObjectOutputStream oos2 = new ObjectOutputStream(file); - resource.save(oos2, options); - oos2.writeUTF("\nCHECKSUM: " + res.toString()); - oos2.close(); + try(FileOutputStream file = new FileOutputStream(fileName); + ObjectOutputStream oos2 = new ObjectOutputStream(file)) { + resource.save(oos2, options); + oos2.writeUTF("\nCHECKSUM: " + res.toString()); + } } resource.getContents().remove(hashRelevant); resource.delete(options);