@Override public boolean equals(Object operation) { boolean equals = false; if (this == operation) { equals = true; } if (operation == null || (operation.getClass() != this.getClass())) { throw new IllegalArgumentException("the Operation Object passed is either null or of the wrong class"); } if (m_nodeId == ((AdapterOperation)operation).getNodeId() && m_type == ((AdapterOperation)operation).getType()) { equals = true; } return equals; }
/** {@inheritDoc} */ @Override public void processPendingOperationForNode(AdapterOperation op) throws ProvisioningAdapterException { LOG.info("processPendingOperationsForNode: acquiring lock..."); synchronized (m_lock) { LOG.debug("processPendingOperationForNode: processing operation: {} for node with Id: # {}", op.getNodeId(), op.getType().name()); if (op.getType() == AdapterOperationType.ADD) { m_adds.add(op.getNodeId()); } else if (op.getType() == AdapterOperationType.UPDATE) { m_updates.add(op.getNodeId()); } else if (op.getType() == AdapterOperationType.DELETE) { m_deletes.add(op.getNodeId()); } doSync=true; } LOG.info("processPendingOperationsForNode: lock released."); }
/** {@inheritDoc} */ @Override public boolean isNodeReady(final AdapterOperation op) { boolean ready = true; if (op.getType() == AdapterOperationType.CONFIG_CHANGE) { ready = m_rancidAdapterConfig.isCurTimeInSchedule(m_onmsNodeIpMap.get(op.getNodeId())); } LOG.debug("isNodeReady: {} For Operation {} for node: {}", op.getNodeId(), ready, op.getType()); return ready; }
private void doDelete(AdapterOperation op) { try { DnsRecord record = m_nodeDnsRecordMap.get(Integer.valueOf(op.getNodeId())); if (record != null) { Update update = new Update(Name.fromString(record.getZone())); update.delete(Name.fromString(record.getHostname()), Type.A); m_resolver.send(update); m_nodeDnsRecordMap.remove(Integer.valueOf(op.getNodeId())); } } catch (Throwable e) { LOG.error("deleteNode: Error handling node deleted event.", e); sendAndThrow(op.getNodeId(), e); } }
private void doUpdate(AdapterOperation op) { LOG.debug("doUpdate: operation: {}", op.getType().name()); for (ReverseDnsRecord record : m_reverseDnsProvisioningAdapterService.get(op.getNodeId()) ) { LOG.debug("doUpdate: ReverseDnsRecord: hostname: {} zone: {} ip address: {}", record.getIp().getHostAddress(), record.getHostname(), record.getZone()); try { Update update = new Update(Name.fromString(record.getZone())); Name ptrRecord=ReverseMap.fromAddress(record.getIp()); update.replace(ptrRecord, Type.PTR, 3600, record.getHostname()); m_resolver.send(update); m_reverseDnsProvisioningAdapterService.update(op.getNodeId(),record); } catch (Exception e) { LOG.error("updateNode: Error handling updated event.", e); sendAndThrow(op.getNodeId(), e); } } }
@Override public boolean isNodeReady(AdapterOperation op) { boolean readyState = false; OnmsNode node = m_nodeDao.get(op.getNodeId()); if (node != null && node.getSysObjectId() != null) { readyState = true; } return readyState; }
@Override public void doInTransactionWithoutResult(TransactionStatus arg0) { doNodeConfigChanged(op.getNodeId(),m_cp,true); } });
/** {@inheritDoc} */ @Override public boolean isNodeReady(final AdapterOperation op) { boolean ready = true; if (op.getType() == AdapterOperationType.CONFIG_CHANGE) { ready = m_rancidAdapterConfig.isCurTimeInSchedule(m_onmsNodeIpMap.get(op.getNodeId())); } LOG.debug("isNodeReady: {} For Operation {} for node: {}", op.getNodeId(), ready, op.getType()); return ready; }
@Override public void doInTransactionWithoutResult(TransactionStatus arg0) { doNodeConfigChanged(op.getNodeId(),m_cp,true); } });
@Override public void doInTransactionWithoutResult(TransactionStatus arg0) { doUpdate(op.getNodeId(),m_cp,true); } });
@Override public void doInTransactionWithoutResult(TransactionStatus arg0) { doAdd(op.getNodeId(),m_cp,true); } });
@Override public void doInTransactionWithoutResult(TransactionStatus arg0) { doAdd(op.getNodeId(),m_cp,true); } });
@Override public boolean isNodeReady(AdapterOperation op) { boolean readyState = false; OnmsNode node = m_nodeDao.get(op.getNodeId()); if (node != null && node.getSysObjectId() != null) { readyState = true; } return readyState; }
@Override public void doInTransactionWithoutResult(TransactionStatus arg0) { doDelete(op.getNodeId(),m_cp,true); } });
@Override public void doInTransactionWithoutResult(TransactionStatus arg0) { doDelete(op.getNodeId(),m_cp,true); } });
@Override public void doInTransactionWithoutResult(TransactionStatus arg0) { doUpdate(op.getNodeId(),m_cp,true); } });