From codesite-noreply at google.com Mon Apr 6 13:19:29 2009 From: codesite-noreply at google.com (codesite-noreply at google.com) Date: Mon, 06 Apr 2009 20:19:29 +0000 Subject: [Red5commits] [red5 commit] r3581 - Removed Jacksum per APPSERVER-350. Also updated ivy to 2.1.0 rc1 Message-ID: <0016e64642629dfaba0466e89d69@google.com> Author: mondain Date: Mon Apr 6 12:50:10 2009 New Revision: 3581 Added: java/server/trunk/lib/ivy-2.1.0-rc1.jar (contents, props changed) Modified: doc/trunk/changelog.txt java/server/trunk/build.properties java/server/trunk/ivy.xml java/server/trunk/src/org/red5/server/session/SessionManager.java Log: Removed Jacksum per APPSERVER-350. Also updated ivy to 2.1.0 rc1 Modified: doc/trunk/changelog.txt ============================================================================== --- doc/trunk/changelog.txt (original) +++ doc/trunk/changelog.txt Mon Apr 6 12:50:10 2009 @@ -30,6 +30,8 @@ that the main scheduler has no idea where to location classes you try to access in your scheduled job (No jira) - Issue when reading empty persistent shared objects (APPSERVER-364) +- Removed Jacksum API, replaced with function available in commons-codec (APPSERVER-350) + --------------------------- Red5 0.8.0 RC2 Modified: java/server/trunk/build.properties ============================================================================== --- java/server/trunk/build.properties (original) +++ java/server/trunk/build.properties Mon Apr 6 12:50:10 2009 @@ -17,7 +17,7 @@ red5.filename=red5 # Ivy -ivy.version=ivy-2.0.0 +ivy.version=ivy-2.1.0-rc1 # javac options # http://ant.apache.org/manual/CoreTasks/javac.html Modified: java/server/trunk/ivy.xml ============================================================================== --- java/server/trunk/ivy.xml (original) +++ java/server/trunk/ivy.xml Mon Apr 6 12:50:10 2009 @@ -89,7 +89,6 @@ - Added: java/server/trunk/lib/ivy-2.1.0-rc1.jar ============================================================================== Binary file. No diff available. Modified: java/server/trunk/src/org/red5/server/session/SessionManager.java ============================================================================== --- java/server/trunk/src/org/red5/server/session/SessionManager.java (original) +++ java/server/trunk/src/org/red5/server/session/SessionManager.java Mon Apr 6 12:50:10 2009 @@ -26,8 +26,7 @@ import java.util.concurrent.ConcurrentMap; import java.util.concurrent.atomic.AtomicLong; -import jonelo.jacksum.JacksumAPI; -import jonelo.jacksum.algorithm.AbstractChecksum; +import org.apache.commons.codec.digest.DigestUtils; import org.apache.commons.lang.StringUtils; import org.red5.server.api.scheduling.IScheduledJob; @@ -129,18 +128,7 @@ } public static String createHash(String str) { - //logger.debug("createHash for " + str); - AbstractChecksum checksum = null; - try { - // select an algorithm (md5 in this case) - checksum = JacksumAPI.getChecksumInstance("md5"); - checksum.setEncoding(AbstractChecksum.HEX); - checksum.update(str.getBytes()); - } catch (NoSuchAlgorithmException nsae) { - log.warn("Algorithm doesnt exist"); - } - //logger.debug("Formatted " + checksum.getFormattedValue() + " checksum " + checksum); - return checksum.getFormattedValue(); + return DigestUtils.md5Hex(str.getBytes()); } /** From codesite-noreply at google.com Mon Apr 6 13:23:43 2009 From: codesite-noreply at google.com (codesite-noreply at google.com) Date: Mon, 06 Apr 2009 20:23:43 +0000 Subject: [Red5commits] [red5 commit] r3580 - Applied patch for APPSERVER-364 Message-ID: <0016369fa251c3ebdb0466e8acd1@google.com> Author: mondain Date: Mon Apr 6 12:31:10 2009 New Revision: 3580 Modified: doc/trunk/changelog.txt java/server/trunk/src/org/red5/server/persistence/FilePersistence.java Log: Applied patch for APPSERVER-364 Modified: doc/trunk/changelog.txt ============================================================================== --- doc/trunk/changelog.txt (original) +++ doc/trunk/changelog.txt Mon Apr 6 12:31:10 2009 @@ -29,6 +29,7 @@ - Created means for segregated Quartz schedulers per application. The bug was that the main scheduler has no idea where to location classes you try to access in your scheduled job (No jira) +- Issue when reading empty persistent shared objects (APPSERVER-364) --------------------------- Red5 0.8.0 RC2 Modified: java/server/trunk/src/org/red5/server/persistence/FilePersistence.java ============================================================================== --- java/server/trunk/src/org/red5/server/persistence/FilePersistence.java (original) +++ java/server/trunk/src/org/red5/server/persistence/FilePersistence.java Mon Apr 6 12:31:10 2009 @@ -34,6 +34,7 @@ import org.red5.server.api.IScope; import org.red5.server.api.persistence.IPersistable; import org.red5.server.net.servlet.ServletUtils; +import org.red5.server.so.SharedObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.io.Resource; @@ -402,6 +403,16 @@ //if we made it this far and everything seems ok if (result) { +// Here we go. If it's a persistent SharedObject and it's empty, +// don't write it to disk. APPSERVER-364 + if (object instanceof SharedObject) { + SharedObject soRef = (SharedObject)object; + if (soRef.getAttributes().size() == 0) { +// Just return true to trick the server into thinking everything is just fine :P + return true; + } + } + String filename = getObjectFilename(object); log.debug("File name: {}", filename); //strip path