class WritableScriptedLazyDhisResource extends AbstractWritableScriptedDhisResource implements AccessibleWritableScriptedLazyDhisResource {

    @ScriptExecutionForbidden
    @Nullable
    public DhisResource getDhisResource()
    {
        if ( scriptExecutionContext.hasScriptExecution() )
        {
            throw new FatalTransformerException( "Resource instance cannot be accessed within script execution." );
        }

        return resource;
    }

    public  WritableScriptedLazyDhisResource( @Nonnull DhisResource resource, @Nonnull ScriptExecutionContext scriptExecutionContext );
    public  WritableScriptedLazyDhisResource( @Nonnull DhisResourceType resourceType, @Nonnull String resourceId, @Nonnull ScriptExecutionContext scriptExecutionContext );

}