/hazelcast-client/src/main/java/com/hazelcast/client/TransactionClientProxy.java

https://bitbucket.org/gabral6_gmailcom/hazelcast · Java · 48 lines · 25 code · 8 blank · 15 comment · 0 complexity · eda03566514f2998d94d883e56055985 MD5 · raw file

  1. /*
  2. * Copyright (c) 2008-2013, Hazelcast, Inc. All Rights Reserved.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. package com.hazelcast.client;
  17. import com.hazelcast.core.Transaction;
  18. import com.hazelcast.impl.ClusterOperation;
  19. public class TransactionClientProxy implements Transaction {
  20. final ProxyHelper proxyHelper;
  21. public TransactionClientProxy(String name, HazelcastClient client) {
  22. proxyHelper = new ProxyHelper(name, client);
  23. }
  24. public void begin() throws IllegalStateException {
  25. proxyHelper.doOp(ClusterOperation.TRANSACTION_BEGIN, null, null);
  26. }
  27. public void commit() throws IllegalStateException {
  28. proxyHelper.doOp(ClusterOperation.TRANSACTION_COMMIT, null, null);
  29. ClientThreadContext threadContext = ClientThreadContext.get();
  30. threadContext.removeTransaction();
  31. }
  32. public int getStatus() {
  33. return 0;
  34. }
  35. public void rollback() throws IllegalStateException {
  36. proxyHelper.doOp(ClusterOperation.TRANSACTION_ROLLBACK, null, null);
  37. ClientThreadContext threadContext = ClientThreadContext.get();
  38. threadContext.removeTransaction();
  39. }
  40. }