protected function buildTypeHandlerList() {
		foreach ($this->properties as $name => $propertyProfile) {
			$column = $propertyProfile->getColumn();
			
			if (!array_key_exists($column, $this->columnTypes))
				continue;
			
			$this->availableColumns[$name] = $column;
			$type = $propertyProfile->getType();
				
			if (isset($type)) {
				$typeHandler = $this->typeManager->getTypeHandler($type);
	
				if ($typeHandler == false)
					throw new \UnexpectedValueException("No typehandler assigned to type '$type' defined at property $name");
	
				$this->typeHandlers[$name] = $typeHandler;
			}
			else {
				$type = $this->columnTypes[$column];
				$this->typeHandlers[$name] = $this->typeManager->getTypeHandler($type);
			}
		}
	}