Step 5: Creating an interface/impl pair for the new LOB
If you have not already done so, create an interface and an impl for the new LOB.

The interface for the new LOB
The interface must extend LineContext.
The following test is an example of a new BAContext_Ext interface. Provide signatures for the methods needed for all tests of this line of business, regardless of the job being tested.
package gw.cucumber.customer.context.api.lob.ba
// additional uses statements may be needed
/**
* Methods common to {@link BusinessAutoLine}.
* These methods are common to {@link Job} subtypes, for example Submission, PolicyChange, etc.
*/
interface BAContext_Ext extends LineContext {
}
The impl for the new LOB
The impl must extend LineContextImplBase and implement the new interface.
For each method, Guidewire recommends writing initial implementations that simply throw an UnsupportedOperationException. When the initial work is complete, you can test the structure by running a test and verifying that this type of exception is thrown. Later, you can replace each implementation with actual code.
The following text is an example of a new BAContextImpl_Ext impl.
package gw.cucumber.customer.context.impl.smoketest.lob.ba
uses gw.cucumber.context.impl.smoketest.lob.LineContextImplBase
uses gw.cucumber.customer.context.api.lob.ba.BAContext_Ext
// additional uses statements may be needed
class BAContextImpl_Ext extends LineContextImplBase implements BAContext_Ext {
override function removeLineLevelCoverage(covName : String) {
throw new UnsupportedOperationException("Not yet implemented")
}
}
