You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2012/09/04 03:17:18 UTC
svn commit: r1380418 - in /camel/branches/camel-2.10.x: ./
components/camel-hazelcast/src/main/java/org/apache/camel/processor/idempotent/hazelcast/HazelcastIdempotentRepository.java
Author: ningjiang
Date: Tue Sep 4 01:17:18 2012
New Revision: 1380418
URL: http://svn.apache.org/viewvc?rev=1380418&view=rev
Log:
Merged revisions 1380157 via svnmerge from
https://svn.apache.org/repos/asf/camel/trunk
........
r1380157 | ningjiang | 2012-09-03 15:54:01 +0800 (Mon, 03 Sep 2012) | 1 line
CAMEL-5556 fixed the thread issue of camel-hazelcast
........
Modified:
camel/branches/camel-2.10.x/ (props changed)
camel/branches/camel-2.10.x/components/camel-hazelcast/src/main/java/org/apache/camel/processor/idempotent/hazelcast/HazelcastIdempotentRepository.java
Propchange: camel/branches/camel-2.10.x/
------------------------------------------------------------------------------
Merged /camel/trunk:r1380157
Propchange: camel/branches/camel-2.10.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Modified: camel/branches/camel-2.10.x/components/camel-hazelcast/src/main/java/org/apache/camel/processor/idempotent/hazelcast/HazelcastIdempotentRepository.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.10.x/components/camel-hazelcast/src/main/java/org/apache/camel/processor/idempotent/hazelcast/HazelcastIdempotentRepository.java?rev=1380418&r1=1380417&r2=1380418&view=diff
==============================================================================
--- camel/branches/camel-2.10.x/components/camel-hazelcast/src/main/java/org/apache/camel/processor/idempotent/hazelcast/HazelcastIdempotentRepository.java (original)
+++ camel/branches/camel-2.10.x/components/camel-hazelcast/src/main/java/org/apache/camel/processor/idempotent/hazelcast/HazelcastIdempotentRepository.java Tue Sep 4 01:17:18 2012
@@ -24,7 +24,7 @@ import org.apache.camel.support.ServiceS
public class HazelcastIdempotentRepository extends ServiceSupport implements IdempotentRepository<String> {
private String repositoryName;
- private IMap<String, Object> repo;
+ private IMap<String, Boolean> repo;
private HazelcastInstance hazelcastInstance;
public HazelcastIdempotentRepository(HazelcastInstance hazelcastInstance) {
@@ -48,22 +48,21 @@ public class HazelcastIdempotentReposito
@Override
public boolean add(String key) {
- if (this.contains(key)) {
- return false;
- } else {
- this.repo.put(key, false);
- return true;
+
+ Boolean found = this.repo.get(key);
+ if (found == null) {
+ Boolean returned = this.repo.putIfAbsent(key, false);
+ if (returned == null) {
+ return true;
+ }
}
+ return false;
+
}
@Override
public boolean confirm(String key) {
- if (this.contains(key)) {
- this.repo.put(key, true);
- return true;
- } else {
- return false;
- }
+ return this.repo.replace(key, false, true);
}
@Override