declared name
prefixed abstract class
factory test and factory fix
added break at case
added new line at end
phpdoc