SlideShare una empresa de Scribd logo
1 de 19
Developers: Burmak AlexanderMirov YuriyKovalev Igor Trainer: Alexeev Peter XAM XReplicator project
Contents About XAM Technology Why replication? What we’ve done Architecture XReplicator library XUtility Demonstration Resources
About XAM Technology eXtensible Access Method Technology providing a unified interface between applications and storage systems Industry standard API for Fixed Content Aware Storage Makes developers independent from hardware Easy migration between storages and applications
Why replication? Benefits of data replication Reliability Accessibility Performance Security Shortage of analogues of client applications 		for XAM Storage Systems replication
What we’ve done XReplicator library, which enables XAM storages replication  XUtility, which uses XReplicator API and provides console user interface XOnce, a Domain-Specified Language to make easy query to storage
Architecture XReplicator XUtility XAM VIM VIM VIM
XReplicator library Replication – use RBaseAlgorithm or algorithm from third-party developers XSystems collection manipulation Direction of replication – mode parameter (in, out, inout) Constraint for XSystem synchronization data: XAM Query Set of XUID Configuration (XConfig) Logging
Replication – RBaseAlgorithm Uses replication history (state of storage after replication) Serialization/Deserialization to/from file Uses XAM import/export mechanism Solves “dirty” commit time problem Saves timeCommit and timeSynchronize parameters Solves conflicts of similar XSets Supports XReplicator modes and constraints
Logger Logs information about replication, exceptions and configuration changes Logs statistics about replication Two types of log format: XML Simple Supports log levels Log entry content – time, method, level, message Uses proxy-classes for incapsulation Log file(s) settings – path, append, size limit , count
XReplicator API architecture XConfig RAlgorithm XReplicator factory XHashSet InvocationHandler XReplicator XReplicator Module (Guice) XAM
XUtility features Remote control Banning enabled Multiple connections Scripting Reading text file with XUtility commands and executing it (like a command language) Program args enabled (e.g. for third party planners) Encrypt Blowfish encryption Corporate security raise Out of the box planner for replication
XUtility features Multithreading Every command runs in a different thread Enabled background threads (e.g remote control, planner) Commands to manage threads (e.g monitor, kill) Extensibility Dynamic plugins loading enabled (plugin = simple impl. of XOperation)
XUtility architecture Parameters XOp. Thread XOp. Thread Plugin 1 Plugin N XOperation Collector XUtility Operation  Set XReplicator Thread  Set XAM
XOnce features Implements XAM Query Similar SQL Uses MPS Flexible Saves time
XOnce in action XOnceAPI Select from myXSystem 	where "my.field" < 5    to myCollection XAM API XSet query = myXSystem.createXSet(XSet.MODE_RESTRICTED); query.createProperty(XSet.XAM_JOB_COMMAND,     false, XSet.XAM_JOB_QUERY); XStreamqueryStream = query.createXStream( XSet.XAM_JOB_QUERY_COMMAND, false, XAMLibrary.TEXT_PLAIN_MIME_TYPE); queryStream.write ("select quot;.xset.xuidquot; where quot;my.fieldquot; < 5”.getBytes()); queryStream.close(); query.submitJob(); boolean finished = false; while (!finished) {   if (query.containsField(XSet.XAM_JOB_ERROR))     if (query.getString(XSet.XAM_JOB_ERRORHEALTH).equals XSet.XAM_JOB_ERRORHEALTH_ERROR)) { query.haltJob();       throw new QueryException(); }   if (query.getString(XSet.XAM_JOB_STATUS).equals     (XSet.XAM_JOB_STATUS_COMPLETE)) {     finished = true; } } //.........
XReplicator Demonstration
Resources www.snia.org – XAM 1.0.1 developer.emc.com – Many help about XAM groups.google.com/groups/xam-developers-group – Many help too code.google.com/p/google-guice/ – GuiceIoC and DI www.jetbrains.com/mps/ – MPS. Needed to create DSL XOnce maven.apache.org – Maven build manager www.junit.org – Unit tests
XReplicaton on Open Source XReplicator.sourceforge.net
Thank you for attention! Questions?

Más contenido relacionado

Similar a XReplicator

.Net framework
.Net framework.Net framework
.Net frameworkteach4uin
 
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...Rafael Ferreira da Silva
 
Introducing KSML: Kafka Streams for low code environments | Jeroen van Dissel...
Introducing KSML: Kafka Streams for low code environments | Jeroen van Dissel...Introducing KSML: Kafka Streams for low code environments | Jeroen van Dissel...
Introducing KSML: Kafka Streams for low code environments | Jeroen van Dissel...HostedbyConfluent
 
Operating system concepts
Operating system conceptsOperating system concepts
Operating system conceptsGreen Ecosystem
 
UXComm: Universal XML Communicator, an Agent Architecture
UXComm: Universal XML Communicator, an Agent ArchitectureUXComm: Universal XML Communicator, an Agent Architecture
UXComm: Universal XML Communicator, an Agent ArchitectureGeorge Vanecek
 
Bloombase StoreSafe Specifications
Bloombase StoreSafe SpecificationsBloombase StoreSafe Specifications
Bloombase StoreSafe SpecificationsBloombase
 
Microservice and Service Fabric talk
Microservice and Service Fabric talkMicroservice and Service Fabric talk
Microservice and Service Fabric talkDaniel Kreuzhofer
 
2014 IEEE JAVA DATA MINING PROJECT Xs path navigation on xml schemas made easy
2014 IEEE JAVA DATA MINING PROJECT Xs path navigation on xml schemas made easy2014 IEEE JAVA DATA MINING PROJECT Xs path navigation on xml schemas made easy
2014 IEEE JAVA DATA MINING PROJECT Xs path navigation on xml schemas made easyIEEEMEMTECHSTUDENTSPROJECTS
 
IEEE 2014 JAVA DATA MINING PROJECTS Xs path navigation on xml schemas made easy
IEEE 2014 JAVA DATA MINING PROJECTS Xs path navigation on xml schemas made easyIEEE 2014 JAVA DATA MINING PROJECTS Xs path navigation on xml schemas made easy
IEEE 2014 JAVA DATA MINING PROJECTS Xs path navigation on xml schemas made easyIEEEFINALYEARSTUDENTPROJECTS
 
Railo Presentation Railo 3.1
Railo Presentation Railo 3.1Railo Presentation Railo 3.1
Railo Presentation Railo 3.1Rhinofly
 
TechWiseTV Workshop: Catalyst Switching Programmability
TechWiseTV Workshop: Catalyst Switching ProgrammabilityTechWiseTV Workshop: Catalyst Switching Programmability
TechWiseTV Workshop: Catalyst Switching ProgrammabilityRobb Boyd
 
Influx db talk-20150415
Influx db talk-20150415Influx db talk-20150415
Influx db talk-20150415Richard Elling
 
AMF Testing Made Easy! DeepSec 2012
AMF Testing Made Easy! DeepSec 2012AMF Testing Made Easy! DeepSec 2012
AMF Testing Made Easy! DeepSec 2012Luca Carettoni
 
Laurens Van Den Oever Xopus Presentation
Laurens Van Den Oever Xopus PresentationLaurens Van Den Oever Xopus Presentation
Laurens Van Den Oever Xopus PresentationAjax Experience 2009
 
Azure deployments and ARM templates
Azure deployments and ARM templatesAzure deployments and ARM templates
Azure deployments and ARM templatesgjuljo
 
LINQ to XML
LINQ to XMLLINQ to XML
LINQ to XMLukdpe
 

Similar a XReplicator (20)

Fuse technology-2015
Fuse technology-2015Fuse technology-2015
Fuse technology-2015
 
.Net framework
.Net framework.Net framework
.Net framework
 
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...
Running Accurate, Scalable, and Reproducible Simulations of Distributed Syste...
 
Libra Library OS
Libra Library OSLibra Library OS
Libra Library OS
 
Introducing KSML: Kafka Streams for low code environments | Jeroen van Dissel...
Introducing KSML: Kafka Streams for low code environments | Jeroen van Dissel...Introducing KSML: Kafka Streams for low code environments | Jeroen van Dissel...
Introducing KSML: Kafka Streams for low code environments | Jeroen van Dissel...
 
Operating system concepts
Operating system conceptsOperating system concepts
Operating system concepts
 
UXComm: Universal XML Communicator, an Agent Architecture
UXComm: Universal XML Communicator, an Agent ArchitectureUXComm: Universal XML Communicator, an Agent Architecture
UXComm: Universal XML Communicator, an Agent Architecture
 
Bloombase StoreSafe Specifications
Bloombase StoreSafe SpecificationsBloombase StoreSafe Specifications
Bloombase StoreSafe Specifications
 
Microservice and Service Fabric talk
Microservice and Service Fabric talkMicroservice and Service Fabric talk
Microservice and Service Fabric talk
 
2014 IEEE JAVA DATA MINING PROJECT Xs path navigation on xml schemas made easy
2014 IEEE JAVA DATA MINING PROJECT Xs path navigation on xml schemas made easy2014 IEEE JAVA DATA MINING PROJECT Xs path navigation on xml schemas made easy
2014 IEEE JAVA DATA MINING PROJECT Xs path navigation on xml schemas made easy
 
IEEE 2014 JAVA DATA MINING PROJECTS Xs path navigation on xml schemas made easy
IEEE 2014 JAVA DATA MINING PROJECTS Xs path navigation on xml schemas made easyIEEE 2014 JAVA DATA MINING PROJECTS Xs path navigation on xml schemas made easy
IEEE 2014 JAVA DATA MINING PROJECTS Xs path navigation on xml schemas made easy
 
Railo Presentation Railo 3.1
Railo Presentation Railo 3.1Railo Presentation Railo 3.1
Railo Presentation Railo 3.1
 
System Integrity
System IntegritySystem Integrity
System Integrity
 
TechWiseTV Workshop: Catalyst Switching Programmability
TechWiseTV Workshop: Catalyst Switching ProgrammabilityTechWiseTV Workshop: Catalyst Switching Programmability
TechWiseTV Workshop: Catalyst Switching Programmability
 
Influx db talk-20150415
Influx db talk-20150415Influx db talk-20150415
Influx db talk-20150415
 
AMF Testing Made Easy! DeepSec 2012
AMF Testing Made Easy! DeepSec 2012AMF Testing Made Easy! DeepSec 2012
AMF Testing Made Easy! DeepSec 2012
 
Laurens Van Den Oever Xopus Presentation
Laurens Van Den Oever Xopus PresentationLaurens Van Den Oever Xopus Presentation
Laurens Van Den Oever Xopus Presentation
 
Azure deployments and ARM templates
Azure deployments and ARM templatesAzure deployments and ARM templates
Azure deployments and ARM templates
 
LINQ to XML
LINQ to XMLLINQ to XML
LINQ to XML
 
Rit 2011 ats
Rit 2011 atsRit 2011 ats
Rit 2011 ats
 

Último

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 

Último (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 

XReplicator

  • 1. Developers: Burmak AlexanderMirov YuriyKovalev Igor Trainer: Alexeev Peter XAM XReplicator project
  • 2. Contents About XAM Technology Why replication? What we’ve done Architecture XReplicator library XUtility Demonstration Resources
  • 3. About XAM Technology eXtensible Access Method Technology providing a unified interface between applications and storage systems Industry standard API for Fixed Content Aware Storage Makes developers independent from hardware Easy migration between storages and applications
  • 4. Why replication? Benefits of data replication Reliability Accessibility Performance Security Shortage of analogues of client applications for XAM Storage Systems replication
  • 5. What we’ve done XReplicator library, which enables XAM storages replication XUtility, which uses XReplicator API and provides console user interface XOnce, a Domain-Specified Language to make easy query to storage
  • 7. XReplicator library Replication – use RBaseAlgorithm or algorithm from third-party developers XSystems collection manipulation Direction of replication – mode parameter (in, out, inout) Constraint for XSystem synchronization data: XAM Query Set of XUID Configuration (XConfig) Logging
  • 8. Replication – RBaseAlgorithm Uses replication history (state of storage after replication) Serialization/Deserialization to/from file Uses XAM import/export mechanism Solves “dirty” commit time problem Saves timeCommit and timeSynchronize parameters Solves conflicts of similar XSets Supports XReplicator modes and constraints
  • 9. Logger Logs information about replication, exceptions and configuration changes Logs statistics about replication Two types of log format: XML Simple Supports log levels Log entry content – time, method, level, message Uses proxy-classes for incapsulation Log file(s) settings – path, append, size limit , count
  • 10. XReplicator API architecture XConfig RAlgorithm XReplicator factory XHashSet InvocationHandler XReplicator XReplicator Module (Guice) XAM
  • 11. XUtility features Remote control Banning enabled Multiple connections Scripting Reading text file with XUtility commands and executing it (like a command language) Program args enabled (e.g. for third party planners) Encrypt Blowfish encryption Corporate security raise Out of the box planner for replication
  • 12. XUtility features Multithreading Every command runs in a different thread Enabled background threads (e.g remote control, planner) Commands to manage threads (e.g monitor, kill) Extensibility Dynamic plugins loading enabled (plugin = simple impl. of XOperation)
  • 13. XUtility architecture Parameters XOp. Thread XOp. Thread Plugin 1 Plugin N XOperation Collector XUtility Operation Set XReplicator Thread Set XAM
  • 14. XOnce features Implements XAM Query Similar SQL Uses MPS Flexible Saves time
  • 15. XOnce in action XOnceAPI Select from myXSystem where "my.field" < 5 to myCollection XAM API XSet query = myXSystem.createXSet(XSet.MODE_RESTRICTED); query.createProperty(XSet.XAM_JOB_COMMAND, false, XSet.XAM_JOB_QUERY); XStreamqueryStream = query.createXStream( XSet.XAM_JOB_QUERY_COMMAND, false, XAMLibrary.TEXT_PLAIN_MIME_TYPE); queryStream.write ("select quot;.xset.xuidquot; where quot;my.fieldquot; < 5”.getBytes()); queryStream.close(); query.submitJob(); boolean finished = false; while (!finished) { if (query.containsField(XSet.XAM_JOB_ERROR)) if (query.getString(XSet.XAM_JOB_ERRORHEALTH).equals XSet.XAM_JOB_ERRORHEALTH_ERROR)) { query.haltJob(); throw new QueryException(); } if (query.getString(XSet.XAM_JOB_STATUS).equals (XSet.XAM_JOB_STATUS_COMPLETE)) { finished = true; } } //.........
  • 17. Resources www.snia.org – XAM 1.0.1 developer.emc.com – Many help about XAM groups.google.com/groups/xam-developers-group – Many help too code.google.com/p/google-guice/ – GuiceIoC and DI www.jetbrains.com/mps/ – MPS. Needed to create DSL XOnce maven.apache.org – Maven build manager www.junit.org – Unit tests
  • 18. XReplicaton on Open Source XReplicator.sourceforge.net
  • 19. Thank you for attention! Questions?