update extension class name
add license
configuration extension
added exception condition
add tests