code: public static SecretkeyElement fetchSecretKey(PepManager pepManager)
              throws InterruptedException, PubSubException.NotALeafNodeException, XMPPException.XMPPErrorException,
              SmackException.NotConnectedException, SmackException.NoResponseException {
          PubSubManager pm = pepManager.getPepPubSubManager();
          LeafNode secretKeyNode = pm.getOrCreateLeafNode(PEP_NODE_SECRET_KEY);
          List<PayloadItem<SecretkeyElement>> list = secretKeyNode.getItems(1);
          if (list.size() == 0) {
              LOGGER.log(Level.INFO, "No secret key published!");
              return null;
          }
          SecretkeyElement secretkeyElement = list.get(0).getPayload();
          return secretkeyElement;
      }
docs: Fetch the latest {@link SecretkeyElement} from the private backup node.
  
  @see <a href="https://xmpp.org/extensions/xep-0373.html#synchro-pep">
  XEP-0373 §5. Synchronizing the Secret Key with a Private PEP Node</a>
  
  @param pepManager the PEP manager.
  @return the secret key node or null, if it doesn't exist.
  
  @throws InterruptedException if the thread gets interrupted
  @throws PubSubException.NotALeafNodeException if there is an issue with the PubSub node
  @throws XMPPException.XMPPErrorException if there is an XMPP protocol related issue
  @throws SmackException.NotConnectedException if we are not connected
  @throws SmackException.NoResponseException /watch?v=7U0FzQzJzyI