Μεταφράστε

Translate to EnglishÜbersetzen Sie zum Deutsch/GermanΜεταφράστε στα ελληνικά/GreekПереведите к русскому/RussianOversetter til Norsk/NorwegianÖversätta till Svensk/Swedishहिन्दी अनुवाद करने के लिए/Hindi
Tradueix al català/CatalanTulkot uz latviešu/LatvianPreložiť do slovenčiny/SlovakVertaal aan het Nederlands/Dutchترجمة الى العربية/ArabicTraduzca al Español/SpanishTraduisez au Français/French
Traduca ad Italiano/ItalianTraduza ao Português/Portuguese日本語に翻訳しなさい /Japanese한국어에게 번역하십시오/Korean中文翻译/Chinese Simplified中文翻译/Chinese TraditionalПереклад на українську/Ukrainian
Εικόνα των σύγχρονων λειτουργικών συστημάτων (3$η έκδοση)
Εικόνα της ανάπτυξης πυρήνων Linux (3$η έκδοση)
Εικόνα επικυρωμένου του το Red Hat οδηγού μελέτης Linux μηχανικών RHCE (διαγωνισμός RH302) (Τύπος πιστοποίησης)
Εικόνα της αρχής Google Maps API 3

Γλώσσα διατύπωσης ερωτήσεων XAM

Όπως και την παροχή των προμηθευτής-ανεξάρτητων μέσων, και XSets, η v1.0 προδιαγραφή SNIA XAM καθορίζει επίσης μια γλώσσα διατύπωσης ερωτήσεων (XAM QL), βασισμένο σε ένα υποσύνολο της γλώσσας SQL, για την επιλογή και την ανάκτηση του XUIDs XSets βασισμένου στα ικανοποιημένος-καθορισμένα κριτήρια.

Το σύνολο διατηρημένων λέξεων για αυτήν την γλώσσα διατύπωσης ερωτήσεων είναι αρκετά μικρό: επιλέξτε, όπου, και, ή, όχι, όπως, υπάρχει, τη δέσμευση, μόνο ανάγνωσης, typeof, μήκος, ημερομηνία, ΑΛΗΘΙΝΟΣ, ΨΕΥΤΙΚΗ, πριν από, αφότου, περιέχει, και μέσα. Από το σχέδιο, οι ερωτήσεις XAM μοιάζουν με μια επίλεκτη δήλωση SQL. Η γλώσσα διατύπωσης ερωτήσεων είναι μη διακρίνουσα κεφαλαία και μικρά και χρησιμοποιεί το χαρακτήρα ASCII - σύνολο.

Εδώ είναι ένα παράδειγμα μιας απλής ερώτησης XAM: επιλέξτε «.xset.xuid» όπου «com.example.name» = «Tuckers Plantation

Η έκδοση 1.0 της προδιαγραφής XAM καθορίζει δύο επίπεδα γλωσσικής υποστήριξης διατύπωσης ερωτήσεων, δηλ. επίπεδο 1 και επίπεδο 2. Το επίπεδο 1 καθορίζει τις ερωτήσεις στις ιδιότητες και τις ιδιότητες τομέων σε XSets και είναι υποχρεωτικό. Οποιαδήποτε αξία περιουσιακού στοιχείου XSet που είναι προσιτή σε ένα πρόγραμμα εφαρμογής μέσω της βιβλιοθήκης XAM μπορεί να ρωτηθεί. Το επίπεδο 2 επεκτείνει το επίπεδο 1 για να υποστηρίξει τις ερωτήσεις σε XStreams και είναι προαιρετικό. Και τα δύο επίπεδα ερώτησης προσεγγίζονται μέσω ενός ενιαίου, καθορισμένου τύπου εργασίας που όλοι οι προμηθευτές XAM πρέπει να υποστηρίξουν. Δεδομένου ότι κανένας προμηθευτής ότι γνωρίζω δεν έχει εφαρμόσει πραγματικά το επίπεδο 2 ερωτήσεις, το υπόλοιπο αυτής της θέσης στρέφει στο επίπεδο 1 τις ερωτήσεις.

Μια δήλωση ερώτησης XAM αποτελείται από μια υποχρεωτική επίλεκτη πρόταση που ακολουθείται από έναν προαιρετικό όπου πρόταση. Για XAM v1.0 η μόνη έγκυρη επίλεκτη πρόταση είναι επίλεκτο `.xset.xuid'. Αυτό διευκρινίζει ότι η εφαρμογή ζητά έναν κατάλογο τιμών XUID. Παραδείγματος χάριν επίλεκτο «.xset.xuid»

θα επιστρέψει έναν κατάλογο κάθε XSet που είναι αναγνώσιμο κατά την διάρκεια της ερώτησης.

Όπου η πρόταση χρησιμοποιείται για να διευκρινίσει ένα υποσύνολο XSets που αντιστοιχείται. Για το επίπεδο 1 οι ερωτήσεις αυτό είναι περιορισμένες στις συγκρίσεις μεταξύ των ιδιοτήτων XSet και των κυριολεκτικών ιδιοτήτων τιμών ή/και τομέων και των κυριολεκτικών τιμών. επιλέξτε «.xset.xuid» όπου «.xam.time.xuid» > ημερομηνία («2009-02-01T00: 00: 00.0 ")

θα επιστρέψει τον κατάλογο όλου του Xsets που δημιουργήθηκαν επάνω ή μετά από την 1η Φεβρουαρίου 2009.

Ο ακόλουθος πίνακας παρουσιάζει ποιοι τομέας και κυριολεκτικοί τύποι μπορούν να συγκριθούν εγκύρως. xam_intxam_doublexam_stringxam_datetimexam_xuid το INT ** διπλό ** string* datetime* XUID* η βιβλιοθήκη XAM επικυρώνει ότι οι σειρές και οι φιλελεύθεροι σειρών προσαρμόζονται utf-8 σειρές. Μη συμμορφούμενα utf-8 literals σειράς παράγουν ένα non-fatal λάθος σύνταξης ερώτησης XAM. Τα ζητήματα όπως οι ενιαίοι εναντίον πολλαπλάσιοι χαρακτήρες glyph και οι μη εκτυπώσιμοι χαρακτήρες είναι απροσδιόριστα και

Εξουσιοδοτημένοι XAM τομείς

Σε αυτήν την θέση εξετάζω ποιοι τομείς εξουσιοδοτούνται από τη v1.0 προδιαγραφή SNIA XAM και γράφουν μια μικρή εφαρμογή της Ιάβας για να ανακτήσει τις προκαθορισμένες αξίες τους χρησιμοποιώντας τη XAM αναφορά VIM και Centera XAM VIM του EMC.

Τι από ένας τομέας σημαίνει σε XAM; Σύμφωνα με την παράγραφο 3.1.5 της XAM προδιαγραφής v1.0, μέρος 1, ένας τομέας είναι ένα κομμάτι των μεμονωμένα ευπροσδιόριστων στοιχείων που μπορούν να συνδεθούν με ένα XSet, ένα XSystem, ή μια βιβλιοθήκη XAM.

Πιό συγκεκριμενα, ένας τομέας έχει ένα όνομα, διάφορες ιδιότητες που περιγράφουν πώς να αλληλεπιδράσουν με το αντικείμενο, και μια αξία. Οποιοδήποτε αρχικό αντικείμενο XAM, δηλ. ένα XSystem, ένα XSet, ή ένα αντικείμενο βιβλιοθήκης XAM μπορεί να περιέχει έναν ή περισσότερους τομείς.

Τα ονόματα τομέων είναι sentitive utf-8 κωδικοποιημένες σειρές περίπτωσης με ένα μέγιστο μήκος 512 ψηφιολέξης και κανενός ενσωματωμένου ΚΕΝΟΥ χαρακτήρα. Για να αποφύγει namespace τις διαφωνίες, ο τομέας namespace διατίθεται μεταξύ των προμηθευτών συστημάτων αποθήκευσης SNIA, XAM και των προμηθευτών εφαρμογής XAM. Ο ακόλουθος πίνακας παρουσιάζει αυτήν την περίοδο διατηρημένη namespace για τα ονόματα τομέων: NAMESPACEDESCRIPTION .xam.* η βιβλιοθήκη-κύρια XAM μερίδα του namespace. Οι τομείς σε αυτό το namespace θα καθοριστούν σε αυτήν την προδιαγραφή και του ακολουθήστε -ακολουθώ-ons και δεν θα επεκταθεί από XAM τους προμηθευτές συστημάτων αποθήκευσης. xSystem-κύρια .xsystem.*The μερίδα του namespace. Οι τομείς σε αυτό το namespace θα καθοριστούν σε αυτήν την προδιαγραφή και του ακολουθήστε -ακολουθώ-ons και δεν θα επεκταθεί από XAM τους προμηθευτές συστημάτων αποθήκευσης. .xset.* η xSet-κύρια μερίδα του namespace. Οι τομείς σε αυτό το namespace θα καθοριστούν σε αυτήν την προδιαγραφή και του ακολουθήστε -ακολουθώ-ons και δεν θα επεκταθεί από XAM τους προμηθευτές συστημάτων αποθήκευσης. το σύστημα .vnd.<reverseDNS>.*The XAM προμηθευτής-που είναι κύριο namespace μέσα στο XSystem namespace, πού είναι το DNS του προμηθευτή συστημάτων αποθήκευσης XAM αντίστροφο όνομα org.snia.*Reserved για SNIA org.snia.xam.* που διατηρείται για SNIA FCWG για να αποφύγει τις διαφωνίες τομέων namespace μεταξύ των προμηθευτών συστημάτων αποθήκευσης XAM στο υπόλοιπο ανεπιφύλακτο namespace και aleviate της ανάγκης για ένα κεντρικό ληξιαρχείο ονόματος τομέων XAM, η πρώτη μερίδα ενός ονόματος τομέων προμηθευτών θα είναι το όνομα περιοχών του προμηθευτή στην αντίστροφη διαταγή, που ακολουθείται από το προμηθευτής-καθορισμένο όνομα τομέων, π.χ. com.emc.centera.xam.vim.version.

Δεδομένου ότι mentionly προηγουμένως ένας τομέας μπορεί να έχει τις ιδιότητες. Οι ακόλουθες τέσσερις ιδιότητες εξουσιοδοτούνται από την προδιαγραφή XAM: Τύπος ΙΔΙΟΤΗΤΩΝ NAMEDESCRIPTION TypeThe MIME της αξίας. Οι ιδιότητες τύπων θα είναι ΗΠΑ-ASCII που κωδικοποιείται με ένα μέγιστο μήκος 512 ψηφιολέξεων. Του Μπουλ αξία BindingA που δείχνει εάν ο τομέας είναι συνδεδεμένος στο XUID του XSet. Του Μπουλ αξία ReadonlyA

Κανονικό σχήμα XAM

Μια από τις βασικές απαιτήσεις για τη μακροπρόθεσμη εμμονή στοιχείων είναι η δυνατότητα να κινηθούν τα στοιχεία μεταξύ της αρχειοθέτησης των συστημάτων ή, στη γλώσσα της (εκτατή μέθοδος προσπέλασης) προδιαγραφής SNIA XAM, που κινεί XSets μεταξύ XSystems.

Η v1.0 προδιαγραφή XAM υποστηρίζει αυτήν την απαίτηση με την παροχή της υποστήριξης για την εξαγωγή και την εισαγωγή Xsets.  Διευκρινίζει τις μεθόδους που χρησιμοποιούνται για να εξαγάγουν ένα XSet από ένα XSystem, το επακόλουθο κανονικό σχήμα ανταλλαγής στοιχείων XSet (συσκευασία) και τις μεθόδους που χρησιμοποιούνται για να εισαγάγουν ένα Xset σε ένα Xsystem. 

Αυτή η θέση υποθέτει ότι εξοικειώνεστε κάπως με XAM και πώς να προγραμματίσετε σε εκείνη την προδιαγραφή χρησιμοποιώντας την Ιάβα.  Εστιάζει στο σχήμα και το περιεχόμενο της κανονικής συσκευασίας σχήματος XSet που αποτελείται από δύο κύρια μέρη: ένα έγγραφο XML που περιγράφει τις πολιτικές, τις ιδιότητες και τα ρεύματα ενός ή περισσότερου XSets που ακολουθούνται από τη δυαδική αντιπροσώπευση του ρεύματος.

Το σχήμα συσκευασίας προσαρμόζεται στη βελτιστοποιημένη σύσταση συσκευασίας του 2005 W3C xML-δυαδικό (XOP). Για να αναφέρει τη σύσταση:

XOP καθορίζει έναν serialization γενικού σκοπού μηχανισμό για το XML Infoset με το δυαδικό περιεχόμενο που ισχύει όχι μόνο στο ΣΑΠΟΎΝΙ και τη συσκευασία MIME, αλλά σε οποιοδήποτε XML Infoset και οποιοδήποτε συσκευάζοντας μηχανισμό.

Εάν είστε άγνωστοι με XOP, και οι περισσότεροι άνθρωποι είναι, ένα άρθρο από Andrey Butov στο ζήτημα Δεκεμβρίου 2005 του περιοδικού Dobb γιατρών περιείχε μια καλή εισαγωγή.

Περισσότερα από ένα XSet μπορούν να περιληφθούν σε μια συσκευασία.  Εντούτοις η τρέχουσα εφαρμογή αναφοράς XAM SDK υποστηρίζει μόνο ένα XSet.  Το έγγραφο XML (AKA η προκήρυξη XSet) είναι ένα έγκυρο και καλοσχηματισμένο έγγραφο XML το του οποίου στοιχείο ρίζας είναι xsets.  Μπορεί να αναλυθεί και να χειριστεί χρησιμοποιώντας XSLT και άλλα εργαλεία XML.  Το παράρτημα Β του εγγράφου αρχιτεκτονικής XAM περιέχει έναν καθορισμό σχημάτων XML (XSD) για την προκήρυξη XSet.

Προκειμένου να μελετηθεί το σχήμα συσκευασίας λεπτομερέστερα, έγραψα μια μικρή εφαρμογή της Ιάβας αποκαλούμενη StoreHelloWorld που δημιουργεί ένα νέο XSet περιέχοντας δύο XStreams.  Το πρώτο Xstream περιέχει το κωδικό πηγής για το πανταχού παρόν πρόγραμμα HelloWorld.java.  Το δεύτερο XStream περιέχει το δυαδικό αντικείμενο HelloWorld.class που κωδικοποιείται σε base64 και με έναν τύπο MIME εφαρμογής/του base64.  Κανονικά δεν πρέπει να κωδικοποιήσετε ένα XStream αλλά η επίδειξη των δυαδικών αρχείων σε ένα blog είναι προβληματική και ως εκ τούτου workaround.

Εδώ είναι ο κωδικός πηγής για StoreHelloWorld. εισαγωγή java.io.Bu fferedOutputStream εισαγωγή java.io.Bu fferedInputStream εισαγωγή java.io.Bu fferedReader εισαγωγή java.io.Fi LE εισαγωγή java.io.Fi leInputStream εισαγωγή java.io.Fi leOutputStream leNotFoundException του java.io.Fi εισαγωγών εισαγωγή java.io.Fi leWriter εξαίρεση του java.io.IO εισαγωγών εισαγωγή java.io.In putStreamReader εισαγωγή java.io.In putStream