Purpose: Interface used to support additional persistence unit metadata being provided from outside of what was packaged within the application.
Purpose: Interface used to support caching the project generated from metadata avoiding costs associated processing the same metadata over multiple deployments.
Purpose: Support serializing/deserializing a project representing application metadata to/from a file.
Purpose: To provide a trivial implementation of MetadataSource.
Purpose: Support reading metadata for a persistence unit in an XML format from a URL and if the property is undefined, it will look for a file.