almost finish the feature of meta mapping

1. the junit test is passed
2. the code needs to be refactored and well documented