Example #1
0
func (s *aliasStore) RemoveAlias(alias ct.Alias, room ct.RoomId) types.Error {
	deleted, err := s.idMap.Delete(ct.Id(alias), ct.Id(room))
	if err != nil {
		return types.InternalError(err)
	}
	if !deleted {
		return types.NotFoundError("room alias '" + alias.String() + "' doesn't exist")
	}
	return nil
}
Example #2
0
func (s roomService) LookupAlias(alias ct.Alias) (ct.RoomId, types.Error) {
	room, err := s.aliases.Room(alias)
	if err != nil {
		return ct.RoomId{}, err
	}
	if room == nil {
		return ct.RoomId{}, types.NotFoundError("room alias '" + alias.String() + "' doesn't exist")
	}
	return *room, nil
}
Example #3
0
func (s *aliasStore) AddAlias(alias ct.Alias, room ct.RoomId) types.Error {
	inserted, err := s.idMap.Insert(ct.Id(alias), ct.Id(room))
	if err != nil {
		return types.InternalError(err)
	}
	if !inserted {
		return types.RoomInUseError("room alias '" + alias.String() + "' already exists")
	}
	return nil
}