Το αρχείο pluginconfig.xml

Περιεχόμενα

 

Σημείωση

Όταν σε αυτό το έγγραφο γίνεται παραπομπή σε θέσεις αρχείων ή καταλόγων, το στοιχείο <install-home> αντιστοιχεί στον κατάλογο όπου έχει αποσυμπιεστεί το πακέτο του ελεγκτή ρουτινών.

Εισαγωγή

Το αρχείο pluginconfig.xml βρίσκεται στον κατάλογο <install-home>\plugins\<plugin-name>\config.  Πρόκειται για ένα αρχείο ρυθμίσεων που επιτρέπει την επέκταση των καθολικών ρυθμίσεων περιβάλλοντος και των ψευδωνύμων εφαρμογών που ορίζονται στο αρχείο serviceconfig.xml ανάλογα με τις ανάγκες των εφαρμογών.  Η επέκταση των ρυθμίσεων περιβάλλοντος που ορίζονται στο αρχείο serviceconfig.xml επηρεάζει όλες τις εφαρμογές (συμπεριλαμβανομένων των ρουτινών) που εκκινούνται από τον ελεγκτή ρουτινών αφού όλες οι εφαρμογές κληρονομούν αυτό το περιβάλλον.  Με αυτό τον τρόπο, μια "πρόσθετη λειτουργία" μπορεί να κάνει τις εφαρμογές της εντοπίσιμες από άλλες διεργασίες που εκκινούνται από τον ελεγκτή ρουτινών (π.χ. προσθέτοντας τη διαδρομή της στη μεταβλητή περιβάλλοντος CLASSPATH). Η επέκταση της λίστας ψευδωνύμων εφαρμογών επιτρέπει την εκκίνηση νέων εφαρμογών όταν οι υπηρεσίες εκκίνησης του ελεγκτή ρουτινών περιορίζονται στις εφαρμογές που περιλαμβάνονται στη λίστα.

Το αρχείο pluginconfig.xml παρέχει έτσι ένα μηχανισμό για τη συσκευασία πρόσθετων συστατικών στοιχείων που είναι προαιρετικά για τη βασική εγκατάσταση του ελεγκτή ρουτινών.  Επειδή το αρχείο serviceconfig.xml δεν τροποποιείται, η αφαίρεση των προσθηκών είναι εξίσου εύκολη.  

Οι ρουτίνες χρειάζονται τόσο το αρχείο pluginconfig.xml όσο και το αρχείο agent.xml. Το αρχείο agent.xml είναι απαραίτητο για τον ορισμό μιας εφαρμογής ρουτίνας αν θέλετε να είναι δυνατός ο εντοπισμός της όταν ο νέος ελεγκτής ρουτινών αναζητά διαθέσιμες ρουτίνες.  Το αρχείο pluginconfig.xml είναι απαραίτητο όταν η ρουτίνα πρέπει να επεκτείνει το περιβάλλον ή τη λίστα ψευδωνύμων του αρχείου serviceconfig.xml. Η χρήση του αρχείου agent.xml θα αντικαταστήσει τη χρήση του αρχείου pluginconfig.xml σε μια από τις επόμενες εκδόσεις.

Σημείωση

Ο όρος "πρόσθετη λειτουργία" που χρησιμοποιούμε εδώ δεν πρέπει να ταυτίζεται με τις πρόσθετες λειτουργίες του Eclipse.  Ο όρος καθιερώθηκε γιατί αρχικά χρησιμοποιούνταν κανονικές πρόσθετες λειτουργίες,  αλλά πλέον αυτό το αρχείο ρυθμίσεων μπορεί να αναφέρεται σε οποιαδήποτε εφαρμογή χωρίς να έχει απαραίτητα τη μορφή πρόσθετης λειτουργίας για τον πάγκο εργασίας του Eclipse.

Το αρχείο pluginconfig.xml περιλαμβάνει τις ακόλουθες κύριες ενότητες:

 

Ρύθμιση πρόσθετης λειτουργίας

 

Σε αυτή την ενότητα παρουσιάζεται η ιεραρχία των στοιχείων που περιλαμβάνονται στο αρχείο pluginconfig.xml. Η σειρά των στοιχείων που εμφανίζονται στο ίδιο επίπεδο δεν έχει σημασία. Κάθε στοιχείο στην ιεραρχία εμφανίζεται ως υπερδιασύνδεση που οδηγεί στην αναλυτική περιγραφή του στοιχείου στην ενότητα Στοιχεία και γνωρίσματα.


    PluginConfiguration
        AgentControllerEnvironment
           Variable
        Option
        Application
            Variable
            Parameter
        Agent
            Option

       

Στοιχεία και γνωρίσματα

 

Στοιχείο: PluginConfiguration
Αποτελεί το κεντρικό στοιχείο στη ρύθμιση της πρόσθετης λειτουργίας. Το στοιχείο  AgentControllerEnvironment μπορεί να εμφανίζεται μόνο μία φορά στο αρχείο ρυθμίσεων. Όλα τα άλλα στοιχεία (Option, Application και Agent) μπορούν να εμφανίζονται περισσότερες φορές στο αρχείο ρυθμίσεων.  Οποιοδήποτε υποστοιχείο μπορεί να παραληφθεί.

Υποστοιχεία:     AgentControllerEnvironment

                            Option
                            Application
                            Agent
                           
Γνωρίσματα:

requires
(Προαιρετικό γνώρισμα) Αυτή η τιμή σειράς χαρακτήρων ορίζει μια λίστα με τα ονόματα των πρόσθετων λειτουργιών από τις οποίες εξαρτάται το παρόν σύνολο ρυθμίσεων. Τα ονόματα των πρόσθετων λειτουργιών διαχωρίζονται με κόμμα. Όπως συμβαίνει και στο TPTP 4.0, στα ονόματα των πρόσθετων λειτουργιών έχει προστεθεί ένα επίθημα ταυτότητας εκδοχής. Το επίθημα αποτελείται από ένα χαρακτήρα υπογραμμής που ακολουθείται από τον αριθμό εκδοχής της έκδοσης. Για παράδειγμα: org.eclipse.tptp.platform.agentcontroller_4.0.0. Για να διασφαλιστεί η συμβατότητα των πρόσθετων λειτουργιών για εφαρμογές με εξαρτήσεις από πρόσθετες λειτουργίες προγενέστερων εκδόσεων (πρόσθετες λειτουργίες χωρίς επίθημα ταυτότητας εκδοχών), μπορείτε να καταχωρήσετε το όνομα της πρόσθετης λειτουργίας για το γνώρισμα "requires" χωρίς την ταυτότητα εκδοχής. Σε αυτή την περίπτωση, ο φορτωτής ρυθμίσεων του ελεγκτή ρουτινών θα επιχειρήσει πρώτα να εντοπίσει το πλήρες όνομα της πρόσθετης λειτουργίας συμπεριλαμβανομένου του επιθήματος ταυτότητας εκδοχής. Αν το πλήρες όνομα δεν βρεθεί, ο φορτωτής ρυθμίσεων θα αναζητήσει το όνομα της πρόσθετης λειτουργίας χωρίς το επίθημα ταυτότητας εκδοχής. Αν υπάρχουν περισσότερες από μία πρόσθετες λειτουργίες με το ίδιο όνομα, θα χρησιμοποιηθεί το πρώτο όνομα πρόσθετης λειτουργίας που θα επιστραφεί από το λειτουργικό σύστημα.

Στοιχείο: AgentControllerEnvironment
Το στοιχείο AgentControllerEnvironment περιλαμβάνει ένα ή περισσότερα στοιχεία Variable τα οποία θα επεκτείνουν τις καθολικές μεταβλητές περιβάλλοντος που ορίζονται στο αρχείο serviceconfig.xml.  Οι μεταβλητές που ορίζονται με αυτά τα στοιχεία θα ενσωματωθούν στο περιβάλλον που χρησιμοποιείται για την εκκίνηση όλων των εφαρμογών.


Χρησιμοποιείται από το στοιχείο: PluginConfiguration

Υποστοιχεία:     Variable

 

Στοιχείο: Variable

Το στοιχείο Variable ορίζει μια μεταβλητή περιβάλλοντος και τον τρόπο με τον οποίο θα τοποθετηθεί στο υπάρχον περιβάλλον ώστε να σχηματιστεί το νέο προεπιλεγμένο περιβάλλον για όλες τις εφαρμογές και τις ρουτίνες που εκκινούνται από τον ελεγκτή ρουτινών. Μπορείτε να ορίσετε 0 ή περισσότερα στοιχεία Variable για το στοιχείο AgentControllerEnvironment.

Χρησιμοποιείται από το στοιχείο: AgentControllerEnvironment

Γνωρίσματα:

name
Αυτή η τιμή σειράς χαρακτήρων ορίζει το όνομα της μεταβλητής περιβάλλοντος.
value
Αυτή η τιμή σειράς χαρακτήρων ορίζει την τιμή της μεταβλητής περιβάλλοντος.
position
(Προαιρετικό γνώρισμα) Αυτή η τιμή σειράς χαρακτήρων μπορεί να είναι "append", "prepend" ή "replace". Το συγκεκριμένο γνώρισμα ορίζει τη θέση όπου θα τοποθετηθεί η μεταβλητή περιβάλλοντος σε σχέση με το υπάρχον προεπιλεγμένο περιβάλλον.

Στοιχείο: Option
Ένα στοιχείο Option ως στοιχείο πρώτου επιπέδου στο στοιχείο PluginConfiguration χρησιμοποιείται για τον ορισμό αυθαίρετων δεδομένων ρύθμισης τα οποία θα προωθούνται σε κάθε ρουτίνα που εγγράφεται στον ελεγκτή ρουτινών. Αυτές οι πληροφορίες συμπεριλαμβάνονται στις πληροφορίες που επιστρέφονται στους πελάτες για κάθε ρουτίνα. Οι ρουτίνες μπορούν να (ή να μην) ερμηνεύσουν αυτές τις πληροφορίες κατά βούληση. Οι πληροφορίες του στοιχείου Option παρέχονται στις ρουτίνες που χρησιμοποιούν το αρχικό API του ελεγκτή ρουτινών (επίπεδα συμβατότητας με προηγούμενες εκδόσεις). Για την παροχή πληροφοριών ρύθμισης σε μια ρουτίνα που χρησιμοποιεί το νέο API, πρέπει να χρησιμοποιηθεί το αρχείο agent.xml.

Χρησιμοποιείται από το στοιχείο: Agent

Γνωρίσματα:

name
Αυτή η τιμή σειράς χαρακτήρων ορίζει το χώρο ονομάτων για το στοιχείο επιλογής (Option).
type
Αυτή η τιμή σειράς χαρακτήρων ορίζει το όνομα του στοιχείου επιλογής (Option).
value
Αυτή η σειρά χαρακτήρων είναι η τιμή του στοιχείου επιλογής (Option).
Στοιχείο: Application
Το στοιχείο Application ορίζει ή επεκτείνει ένα ψευδώνυμο και τις πληροφορίες εκκίνησης για μια εφαρμογή. Αυτό το στοιχείο μπορεί να περιλαμβάνει ρυθμίσεις οι οποίες θα είναι διαθέσιμες μόνο σε αυτή την εφαρμογή όταν εκκινείται.  Το ψευδώνυμο της εφαρμογής που ορίζεται σε αυτό το στοιχείο προστίθεται στη λίστα που ορίζεται στο στοιχείο ApplicationAliases στο αρχείο serviceconfig.xml.


Χρησιμοποιείται από το στοιχείο: PluginConfiguration

Υποστοιχεία:     Variable

                             Parameter

Γνωρίσματα:

executable
Αυτή η τιμή σειράς χαρακτήρων ορίζει το ψευδώνυμο του εκτελέσιμου αρχείου της εφαρμογής που ορίζεται στο γνώρισμα διαδρομής (path). Οι πελάτες πρέπει να χρησιμοποιούν αυτό το όνομα για την αναγνώριση της εφαρμογής.  Αν ορίσετε επίσης το γνώρισμα extends, το όνομα που θα ορίσετε εδώ πρέπει να συμφωνεί με ένα υπάρχον ψευδώνυμο.  
path
Αυτή η τιμή σειράς χαρακτήρων ορίζει την πλήρη διαδρομή της εφαρμογής που θα εκκινείται. Αυτή η διαδρομή χρησιμοποιείται στη θέση του ψευδωνύμου κατά την εκκίνηση του εκτελέσιμου αρχείου της εφαρμογής.
Αυτό το γνώρισμα δεν λαμβάνεται υπόψη όταν έχει οριστεί το γνώρισμα extends.  
location
(Προαιρετικό γνώρισμα) Αυτή η τιμή σειράς χαρακτήρων ορίζει τον κατάλογο από τον οποίο θα εκκινείται το εκτελέσιμο αρχείο. Αυτός ο κατάλογος αναφέρεται και ως κατάλογος εργασίας του εκτελέσιμου αρχείου.
extends
(Προαιρετικό γνώρισμα) Αυτή η τιμή σειράς χαρακτήρων ορίζει το όνομα ρύθμισης για ένα υπάρχον ψευδώνυμο εφαρμογής. Ωστόσο, επειδή τα ονόματα ρύθμισης δεν υποστηρίζονται, η τιμή αυτού του γνωρίσματος πρέπει να είναι "default". Όταν οριστεί το γνώρισμα extends (ανεξάρτητα από την τιμή του), οι πληροφορίες που περιλαμβάνει το στοιχείο Application θα πρέπει να επεκτείνουν τις πληροφορίες εκκίνησης που έχουν οριστεί για το ψευδώνυμο εφαρμογής στο οποίο αντιστοιχεί το γνώρισμα. Σε αυτή την περίπτωση δεν επιτρέπεται η αλλαγή της τιμής του γνωρίσματος path (δηλαδή, του εκτελέσιμου αρχείου για εκκίνηση). Αν δεν βρεθεί ψευδώνυμο εφαρμογής που να συμφωνεί με το όνομα του εκτελέσιμου αρχείου, αυτό το στοιχείο Application δεν έχει ισχύ.

Στοιχείο: Variable
Το στοιχείο Variable ορίζει μια μεταβλητή περιβάλλοντος και τον τρόπο με τον οποίο πρέπει να τοποθετηθεί στο υπάρχον περιβάλλον κατά την εκκίνηση της εφαρμογής. Μπορείτε να ορίσετε 0 ή περισσότερα στοιχεία μεταβλητής για μια εφαρμογή.

Χρησιμοποιείται από το στοιχείο: Application

Γνωρίσματα:

name
Αυτή η τιμή σειράς χαρακτήρων ορίζει το όνομα της μεταβλητής περιβάλλοντος.
value
Αυτή η τιμή σειράς χαρακτήρων ορίζει την τιμή της μεταβλητής περιβάλλοντος.
position
(Προαιρετικό γνώρισμα) Αυτή η τιμή σειράς χαρακτήρων μπορεί να είναι "append", "prepend" ή "replace". Το συγκεκριμένο γνώρισμα ορίζει τη θέση όπου θα τοποθετηθεί η μεταβλητή περιβάλλοντος σε σχέση με το προεπιλεγμένο περιβάλλον.

Στοιχείο: Parameter

Το στοιχείο Parameter ορίζει ένα όρισμα γραμμής εντολών που θα δίδεται στην εφαρμογή όταν εκκινείται. Μπορείτε να ορίσετε 0 ή περισσότερα στοιχεία παραμέτρου για μια εφαρμογή.

Χρησιμοποιείται από το στοιχείο: Application

Γνωρίσματα:

value
Αυτή η τιμή σειράς χαρακτήρων ορίζει ένα όρισμα γραμμής εντολών.
position
(Προαιρετικό γνώρισμα) Αυτή η τιμή σειράς χαρακτήρων μπορεί να είναι "append", "prepend" ή "replace". Το συγκεκριμένο γνώρισμα ορίζει τη θέση όπου θα τοποθετηθεί αυτό το όρισμα σε σχέση με τα υπάρχοντα ορίσματα γραμμής εντολών.

Στοιχείο: Agent
Παρέχει πληροφορίες ρύθμισης για μια συγκεκριμένη ρουτίνα. Αφορά μόνο όσες ρουτίνες χρησιμοποιούν το αρχικό  API του ελεγκτή ρουτινών (επίπεδα συμβατότητας με προηγούμενες εκδόσεις). Για την παροχή πληροφοριών ρύθμισης σε μια ρουτίνα που χρησιμοποιεί το νέο API, πρέπει να χρησιμοποιηθεί το αρχείο agent.xml.

Χρησιμοποιείται από το στοιχείο: PluginConfiguration

Υποστοιχεία:     Option

Γνωρίσματα:

name
Αυτή η τιμή σειράς χαρακτήρων ορίζει το όνομα της ρουτίνας στην οποία θα εφαρμοστούν αυτές οι πληροφορίες ρύθμισης.
type
(Προαιρετικό γνώρισμα) Αυτή η τιμή σειράς χαρακτήρων ορίζει ένα είδος ρουτίνας.
dataChannelSize
(Προαιρετικό γνώρισμα) Αυτή η τιμή σειράς χαρακτήρων ορίζει το μέγεθος της κοινόχρηστης μνήμης που θα παραχωρηθεί για την επικοινωνία μεταξύ των διεργασιών. Η τιμή αυτού του γνωρίσματος είναι ένας ακέραιος αριθμός που συνοδεύεται από το επίθημα M (Megabytes) ή το K (Kilobytes). Αν καταχωρήσετε την τιμή χωρίς επίθημα, θα θεωρηθεί ότι η τιμή δηλώνει αριθμό byte. Για παράδειγμα, μπορείτε να ορίσετε τιμή "16M", "8K" ή "16000".
logFile
(Προαιρετικό γνώρισμα) Αυτή η σειρά χαρακτήρων ορίζει την πλήρη διαδρομή ενός αρχείου. Αν οριστεί, τα δεδομένα που θα μεταφέρονταν κανονικά μέσω του καναλιού δεδομένων θα γράφονται σε αυτό το αρχείο.
client
(Προαιρετικό γνώρισμα) Αυτή η σειρά χαρακτήρων ορίζει αν αυτή η ρουτίνα αλληλεπιδρά με έναν πελάτη.  Μπορείτε να ορίσετε τις τιμές "DYNAMIC" ή "HEADLESS".  Η τιμή HEADLESS δηλώνει ότι κανένας πελάτης δεν σχετίζεται με τη ρουτίνα. Η προεπιλεγμένη τιμή είναι DYNAMIC. 
extends
(Προαιρετικό γνώρισμα) Αυτή η τιμή σειράς χαρακτήρων ορίζει το όνομα ρύθμισης για μια υπάρχουσα εφαρμογή. Ωστόσο, επειδή τα ονόματα ρύθμισης δεν υποστηρίζονται, η τιμή αυτού του γνωρίσματος πρέπει να είναι "default". Όταν οριστεί το γνώρισμα extends (ανεξάρτητα από την τιμή του), οι πληροφορίες που περιλαμβάνει το στοιχείο Agent θα πρέπει να επεκτείνουν τις πληροφορίες ρύθμισης που έχουν οριστεί για την υπάρχουσα εφαρμογή (στοιχείο Agent) στην οποία αντιστοιχεί το γνώρισμα. Αυτό γνώρισμα χρησιμοποιείται για την επέκταση της λίστας επιλογών (στοιχεία Option) που σχετίζονται με μια συγκεκριμένη εφαρμογή.

Στοιχείο: Option
Το υποστοιχείο Option σε ένα στοιχείο Agent  χρησιμοποιείται για τον ορισμό αυθαίρετων δεδομένων ρύθμισης τα οποία θα προωθούνται στη ρουτίνα κατά την εγγραφή της στον ελεγκτή ρουτινών.  Η ρουτίνα μπορεί να (ή να μην) ερμηνεύσει αυτές τις πληροφορίες κατά βούληση.

Χρησιμοποιείται από το στοιχείο: Agent

Γνωρίσματα:

name
Είναι μια αυθαίρετη σειρά χαρακτήρων που ορίζει το χώρο ονομάτων του στοιχείου επιλογής (Option).
type
Είναι μια αυθαίρετη σειρά χαρακτήρων που ορίζει το είδος (δηλαδή το όνομα) του στοιχείου επιλογής (Option).
value
Είναι μια αυθαίρετη σειρά χαρακτήρων που ορίζει την τιμή του στοιχείου επιλογής (Option).

Παράδειγμα αρχείου pluginconfig.xml

 

<PluginConfiguration requires="org.eclipse.tptp.platform.collection.framework">
    <AgentControllerEnvironment>
        <Variable name="CLASSPATH_MY_AGENTS" position="append"
        value="%PLUGINS_HOME%\org.eclipse.tptp.myagents\lib\coreagent.jar" />
    </AgentControllerEnvironment>

    <Application executable="MyAgent" location="%SYS_TEMP_DIR%" path="%JAVA_PATH%">

        <Variable name="CLASSPATH" position="append"
          value="%PLUGINS_HOME%\org.eclipse.tptp.myagents\jmx\lib\jmxagent.jar" />  
        <Variable name="CLASSPATH" position="append" value="%CLASSPATH_MY_AGENTS%" />  
        <Parameter position="append" value="-Dapp_home=%MY_HOME%" />  
        <Parameter position="append" value="-DagentXML=%PLUGINS_HOME%
          \org.eclipse.tptp.myagents\jmx\agentXML\MyAgent.xml" />
    </Application>

    <Option name="org.eclipse.tptp.Myagents" type="version" value="2.0"/> 

</PluginConfiguration>
 

Σχετικές παραπομπές

Επισκόπηση ρυθμίσεων ρουτίνας  και ελεγκτή ρουτινών


Copyright (C) 2006 Intel Corporation.