Η ````ζωή'''' ενός υπερ-κόμβου συνίσταται στην εκτέλεση μίας όμοιας, αέναης διαδικασίας. Από τη στιγμή της δημιουργίας του κάθε τέτοιος κόμβος καλεί την συνάρτηση
, η οποία αυτό που κάνει είναι να αναγκάζει έναν υπερ-κόμβο να δέχεται ανελλιπώς αιτήσεις από έναν πελάτη ή έναν πάροχο. Η υλοποίηση αυτής της διαδικασίας έχει γίνει με τη χρήση νημάτων (threads), τα οποία προσφέρονται από την Java μέσω της κλάσης Thread. Αυτό σημαίνει, ότι κάθε υπερ-κόμβος έχει τη δυνατότητα να επεξεργάζεται περισσότερες από μία αιτήσεις (είτε από πελάτη, είτε από πάροχο) ψευδοπαράλληλα ή καλύτερα σύγχρονα. Σε αυτή τη συνάρτηση εκτελείται ουσιαστικά η χειραψία (handshake) μεταξύ των δύο οντοτήτων για την εξυπηρέτηση της αίτησης του πελάτη4.5 από τον υπερ-κόμβο. Αυτή η αίτηση μπορεί να αναφέρεται σε πέντε ενέργειες που μπορεί να χρειάζεται ο πελάτης-client και σε τέσσερις για τον πάροχο και η κάθε μία αντιστοιχεί σε μία συνάρτηση που θα κληθεί από τον υπερ-κόμβο για την εξυπηρέτησή τους. Αυτές μπορεί να είναι οι παρακάτω:
Πελάτης
ο υπερ-κόμβος καλεί την συνάρτηση
. Εκτελεί τις απαραίτητες ενέργειες, όπως περιγράφονται στο πρωτόκολλο συμμετοχής.
ο υπερ-κόμβος καλεί την συνάρτηση
. Εκτελεί τις απαραίτητες ενέργειες, όπως περιγράφονται στο πρωτόκολλο σύνδεσης / αποσύνδεσης (δηλαδή, ενημερώνει τον πίνακα
, μαρκάρει τον πελάτη ως συνδεδεμένο και πιθανώς του προωθεί τις αποθηκευμένες ειδοποιήσεις).
ο υπερ-κόμβος καλεί την συνάρτηση
. Μαρκάρει τον πελάτη ως αποσυνδεδεμένο στον πίνακα
.
ο υπερ-κόμβος καλεί την συνάρτηση
. Αναλαμβάνει να αποστείλει προς επεξεργασία την επερώτησή του πελάτη στους κατάλληλους υπερ-κόμβους, σύμφωνα με τις μεθόδους ευρετηριασμού των επερωτήσεων (όπως ορίζει το αντίστοιχο πρωτόκολλο -- 3.2.6 Κατάθεση Στιγμιαίων Επερωτήσεων), καλώντας τις συναρτήσεις
(για επερώτηση τύπου
) και
(για επερώτηση τύπου
). Ο παραλήπτης υπερ-κόμβος επεξεργάζεται την επερώτηση που του θέτει ο πελάτης και του αποστέλλει άμεσα τις απαντήσεις που ταιριάζουν με τις δημοσιεύσεις που υπάρχουν αποθηκευμένες στο σύστημα LibraRing. Για την επίτευξη αυτού του σκοπού χρησιμοποιείται η συνάρτηση
, η οποία ανακτά μία δημοσίευση από τον ΚΠΚ του Pastry, και η συνάρτηση
που απαντά αν μία δημοσίευση ικανοποιεί μία επερώτηση.
ο υπερ-κόμβος καλεί την συνάρτηση
. Αναλαμβάνει να αποστείλει προς αποθήκευση την επερώτηση του πελάτη στους κατάλληλους υπερ-κόμβους, σύμφωνα με τις μεθόδους ευρετηριασμού των επερωτήσεων διαρκείας (όπως ορίζει το αντίστοιχο πρωτόκολλο -- 3.2.7 Λειτουργικότητα Δημοσίευσης / Συνδρομής). Ο παραλήπτης υπερ-κόμβος αποθηκεύει την επερώτηση σε έναν τοπικό πίνακα (continuousQuery), έτσι ώστε κατά την εισαγωγή μίας νέας δημοσίευσης, που θα εισαχθεί από αυτόν τον υπερ-κόμβο, στο PAST, να ελέγξει την ικανοποίησή της. Ο έλεγχος της ικανοποίησης υλοποιείται με την συνάρτηση
. Σε περίπτωση ικανοποίησης κάποιας αποθηκευμένης επερώτησης διαρκείας (αυτό ελέγχεται και πάλι με την συνάρτηση
), μία ειδοποίηση δημιουργείται (
) και αποστέλλεται στον πελάτη καλώντας τη συνάρτηση
. Αυτή η συνάρτηση ελέγχει, αρχικά, αν ο πελάτης είναι ακόμα συνδεδεμένος στο LibraRing και σε θετική απάντηση του αποστέλλει την ειδοποίηση. Σε διαφορετική περίπτωση, αναλαμβάνει να προωθήσει την ειδοποίηση στο σημείο πρόσβασης του πελάτη, ο οποίος τελικά την αποθηκεύει στον πίνακα
. Σημειώνεται, ότι το σημείο πρόσβασης αναλαμβάνει να αφαιρέσει τα διπλότυπα των ειδοποιήσεων -- αυτό δύναται να προκύψει από το γεγονός ότι η ίδια δημοσίευση και άρα η ίδια επερώτηση διαρκείας μπορεί να αποθηκευτεί σε περισσότερους από έναν υπερ-κόμβους -- έτσι ώστε ο πελάτης να μην λάβει περισσότερες από μία ειδοποιήσεις για την ίδια δημοσίευση.
Πάροχος
ο υπερ-κόμβος καλεί την συνάρτηση
. Πράττει ό,τι και στην περίπτωση του πελάτη.
ο υπερ-κόμβος καλεί την συνάρτηση
. Πράττει ό,τι και στην περίπτωση του πελάτη.
ο υπερ-κόμβος καλεί την συνάρτηση
. Πράττει ό,τι και στην περίπτωση του πελάτη.
ο υπερ-κόμβος καλεί την συνάρτηση
. Αναλαμβάνει να αποστείλει προς αποθήκευση την περιγραφή της δημοσίευσης, που λαμβάνει από τον πάροχο, στους κατάλληλους υπερ-κόμβους, σύμφωνα με τις μεθόδους ευρετηριασμού των δημοσιεύσεων (όπως ορίζει το αντίστοιχο πρωτόκολλο -- 3.2.5 Ευρετηριασμός Πόρων). Κάθε παραλήπτης/υπερ-κόμβος, δημιουργεί μία δημοσίευση (
) βάσει της περιγραφής της και στη συνέχεια την εισάγει στον ΚΠΚ καλώντας τη συνάρτηση
. Τέλος, ελέγχει αν ικανοποιούνται οι τοπικές αποθηκευμένες επερωτήσεις διαρκείας και προωθεί τις κατάλληλες ειδοποιήσεις στους πελάτες σύμφωνα με τον τρόπο που περιγράφτηκε παραπάνω στην Επερώτηση Διαρκείας των πελατών.