class Travis::Client::Session

def create_entity(type, data)

def create_entity(type, data)
  return data if primitive?(data)
  data   = { type.id_field => data } if type.id? data
  id     = type.cast_id(data.fetch(type.id_field)) unless type.weak?
  entity = id ? cached(type, :id, id) { type.new(self, id) } : type.new(self, nil)
  entity.update_attributes(data)
  entity
end