Link to figure Example of Provider Subclass
This figure consists of a cylinder labeled Provider C and a box. Dotted lines are used to indicate that Provider C contains the contents of the box. The box contains the following headers and Java code:
provider.java
public class fooJCA extends Provider {
    .
    .
    put("MessageDigest.SHA-256", "com.foo.SHA256");
    .
}com.foo.SHA256.java
package com.foo;
public class SHA256 extends MessageDigestSpi {
    .
    .
}