/*
* Copyright (C) 2014 Intel Corporation
* All rights reserved.
*/
package test.extensions;
/**
* This test class is a prototype of creating extension points in the repository
* classes so that plugins can be notified when records are created, stored,
* retrieved, searched, and deleted.
* For example, a plugin might be interested in any time the TlsPolicyRepository
* updates an existing TlsPolicy record, in order to update its own related
* data.
* To make it work, we also need to define high-level operations such as
* "link", "unlink", "assign", and "copy" so that related records are available
* for extensions as well. For example when creating a new host record and
* setting some named global TlsPolicy, the extension point might be "store".
* But when taking two existing host records with different TlsPolicy objects
* and specifically making one of them reference the other one, that would be
* a "link" with the subject (host record to modify) and object (the host record
* to which the subject will be linked). Then a plugin which has implemented
* an extension for that extension point could do something useful with the
* subject's old TlsPolicy (archive it maybe) or simply send an informative
* alert. Witout high-level actions, the plugin would see just a "store"
* and it wouldn't be clear what happened to the old TlsPolicy, or what is
* the significance of the new TlsPolicy.
* @author jbuhacoff
*/
public class RepositoryExtensionTest {
}