/**
  * creates property for given field
  *
  * @param FieldDescriptorInterface $column
  * @param string $name
  * @return \Zend\Code\Generator\PropertyGenerator
  */
 protected function createProperty(FieldDescriptorInterface $column, $name)
 {
     $type = $this->getFieldType($column);
     $docblock = new \Zend\Code\Generator\DocblockGenerator('Column: ' . $column->getName());
     $docblock->setTag(array("name" => "var", "description" => $type));
     if ($column instanceof ReferenceFieldInterface) {
         if ($column->referencedFieldName()) {
             $docblock->setLongDescription("Reference to " . $column->referencedDataSetName() . "." . $column->referencedFieldName());
         }
     }
     $property = new \Zend\Code\Generator\PropertyGenerator();
     $property->addFlag(\Zend\Code\Generator\PropertyGenerator::FLAG_PUBLIC);
     $property->setName(lcfirst($name));
     $property->setDocBlock($docblock);
     return $property;
 }