Refine search
private Field getField(Class cl, String fn) { try { return cl.getDeclaredField(fn); } catch (NoSuchFieldException e) { return getField(cl.getSuperclass(), fn); } }
public GenericAtomicActionWrapper(String classType, UidWrapper w) { uidWrapper = w; recs = new HashMap<String, RecordList>(); if (classType == null) classType = "com.arjuna.ats.arjuna.AtomicAction"; try { Class cls = Class.forName(classType); Class pTypes[] = new Class[1]; pTypes[0] = Uid.class; Constructor ctor = cls.getConstructor(pTypes); Object args[] = new Object[1]; args[0] = w.getUid(); action = (BasicAction) ctor.newInstance(args); setHeuristicDecision = getMethod(action.getClass(), "setHeuristicDecision", int.class); updateState = getMethod(action.getClass(), "updateState"); if (setHeuristicDecision != null) setHeuristicDecision.setAccessible(true); if (updateState != null) updateState.setAccessible(true); } catch (Exception e) { action = null; if (tsLogger.logger.isDebugEnabled()) tsLogger.logger.debug("unable to create log wrapper for type " + w.getType() + ": error: " + e.getMessage()); } }
public void clearHeuristicDecision(int newDecision) { RecordList rl = getRecords("heuristicList"); if (setHeuristicDecision != null && rl != null && rl.size() == 0) try { setHeuristicDecision.invoke(action, newDecision); } catch (IllegalAccessException e) { if (tsLogger.logger.isDebugEnabled()) tsLogger.logger.debug("failed to update heuristic for " + action.toString() + ": error: " + e.getMessage()); } catch (InvocationTargetException e) { if (tsLogger.logger.isDebugEnabled()) tsLogger.logger.debug("failed to update heuristic for " + action.toString() + ": error: " + e.getMessage()); } }
protected ActionBeanWrapperInterface createWrapper(UidWrapper w, boolean activate) { GenericAtomicActionWrapper action = new GenericAtomicActionWrapper(w.getClassName(), w); if (activate) action.activate(); return action; }
@Override protected ActionBeanWrapperInterface createWrapper(UidWrapper w, boolean activate) { try { InputObjectState state = StoreManager.getRecoveryStore().read_committed(w.getUid(), RecoverConnectableAtomicAction.CONNECTABLE_ATOMIC_ACTION_TYPE); connectableAtomicAction = new RecoverConnectableAtomicAction(RecoverConnectableAtomicAction.CONNECTABLE_ATOMIC_ACTION_TYPE, w.getUid(), state); } catch (ObjectStoreException e) { ; } catch (IOException e) { ; } GenericAtomicActionWrapper action = new GenericAtomicActionWrapper(connectableAtomicAction, w); if (activate) action.activate(); return action; }
@Override public void remove(LogRecordWrapper logRecordWrapper) { if (logRecordWrapper.removeFromList(getRecords(logRecordWrapper.getListType()))) { doUpdateState(); // rewrite the list } }
private Method getMethod(Class cl, String mn, Class<?>... parameterTypes) { try { if (cl == null) return null; return cl.getDeclaredMethod(mn, parameterTypes); } catch (NoSuchMethodException e) { return getMethod(cl.getSuperclass(), mn, parameterTypes); } }
public RecordList getRecords(ParticipantStatus type) { switch (type) { default: case PREPARED: return getRecords("preparedList"); case FAILED: return getRecords("failedList"); case HEURISTIC: return getRecords("heuristicList"); case PENDING: return getRecords("pendingList"); case READONLY: return getRecords("readonlyList"); } } }
private Method getMethod(Class cl, String mn, Class<?>... parameterTypes) { try { if (cl == null) return null; return cl.getDeclaredMethod(mn, parameterTypes); } catch (NoSuchMethodException e) { return getMethod(cl.getSuperclass(), mn, parameterTypes); } }
public RecordList getRecords(ParticipantStatus type) { switch (type) { default: case PREPARED: return getRecords("preparedList"); case FAILED: return getRecords("failedList"); case HEURISTIC: return getRecords("heuristicList"); case PENDING: return getRecords("pendingList"); case READONLY: return getRecords("readonlyList"); } } }
private Method getMethod(Class cl, String mn, Class<?>... parameterTypes) { try { if (cl == null) return null; return cl.getDeclaredMethod(mn, parameterTypes); } catch (NoSuchMethodException e) { return getMethod(cl.getSuperclass(), mn, parameterTypes); } }
@Override public void remove(LogRecordWrapper logRecordWrapper) { if (logRecordWrapper.removeFromList(getRecords(logRecordWrapper.getListType()))) { doUpdateState(); // rewrite the list } }
@Override public void remove(LogRecordWrapper logRecordWrapper) { if (logRecordWrapper.removeFromList(getRecords(logRecordWrapper.getListType()))) { doUpdateState(); // rewrite the list } }
@Override public void remove(LogRecordWrapper logRecordWrapper) { RecordList rl = getRecords(logRecordWrapper.getListType()); if (rl != null && rl.size() > 0) { if (rl.remove(logRecordWrapper.getRecord())) { doUpdateState(); // rewrite the list } } }
@Override public void remove(LogRecordWrapper logRecordWrapper) { RecordList rl = getRecords(logRecordWrapper.getListType()); if (rl != null && rl.size() > 0) { if (rl.remove(logRecordWrapper.getRecord())) { doUpdateState(); // rewrite the list } } }
@Override public void remove(LogRecordWrapper logRecordWrapper) { RecordList rl = getRecords(logRecordWrapper.getListType()); if (rl != null && rl.size() > 0) { if (rl.remove(logRecordWrapper.getRecord())) { doUpdateState(); // rewrite the list } } }
private Method getMethod(Class cl, String mn, Class<?>... parameterTypes) { try { if (cl == null) return null; return cl.getDeclaredMethod(mn, parameterTypes); } catch (NoSuchMethodException e) { return getMethod(cl.getSuperclass(), mn, parameterTypes); } }
private Field getField(Class cl, String fn) { try { return cl.getDeclaredField(fn); } catch (NoSuchFieldException e) { return getField(cl.getSuperclass(), fn); } }
public RecordList getRecords(ParticipantStatus type) { switch (type) { default: case PREPARED: return getRecords("preparedList"); case FAILED: return getRecords("failedList"); case HEURISTIC: return getRecords("heuristicList"); case PENDING: return getRecords("pendingList"); case READONLY: return getRecords("readonlyList"); } } }
private Field getField(Class cl, String fn) { try { return cl.getDeclaredField(fn); } catch (NoSuchFieldException e) { return getField(cl.getSuperclass(), fn); } }