refactor propertyService to reuse  common code.