private static void deleteNode(final NodePK pk, final Connection connection) throws SQLException {
    NodeNotificationService notificationService = NodeNotificationService.getService();
    notificationService.notifyOnDeletionOf(pk);

    NodeDAO.deleteRow(connection, pk);
    NodeI18NDAO.removeTranslations(connection, Integer.parseInt(pk.getId()));
    IndexEntryPK indexEntry = new IndexEntryPK(pk.getComponentName(), "Node", pk.getId());
    IndexEngineProxy.removeIndexEntry(indexEntry);
  }
 /**
  * Method declaration
  *
  * @param node
  * @param path
  * @see
  */
 @Override
 public void unsubscribeByPath(NodePK node, String path) {
   SilverTrace.info(
       "subscribe", "SubscribeBmEJB.removeSubscriptionsByPath", "root.MSG_GEN_ENTER_METHOD");
   Connection con = null;
   try {
     con = getConnection();
     subscriptionDao.removeByNodePath(con, node.getComponentName(), path);
   } catch (SQLException e) {
     DBUtil.rollback(con);
     throw new SubscribeRuntimeException(
         "SubscribeBmEJB.removeSubscriptionsByPath()",
         SilverpeasRuntimeException.ERROR,
         "subscribe.CANNOT_REMOVE_NODE_SUBSCRIBES",
         e);
   } finally {
     DBUtil.close(con);
   }
 }