private static LinkRelation ValidarTelefone(UsuarioRepresentation usuario)
        {
            var uriValidarTelefone = new Uri(UriUsuarioIdComSegmentoComplementar("validacao-telefone",usuario));
            var validarTelefone = new LinkRelation("usuarios/registrar-numero-telefone", uriValidarTelefone);

            return validarTelefone;
        }
        private static LinkRelation ListarCartoes(UsuarioRepresentation usuario)
        {
            var cartoes = new Uri(UriUsuarioIdComSegmentoComplementar("cartoes",usuario));
            var listarCartoes = new LinkRelation("usuarios/listar-cartoes", cartoes);

            return listarCartoes;
        }
        private static LinkRelation Self(UsuarioRepresentation usuario)
        {
            var uri = new Uri(UriUsuarioComId(usuario));
            var self = new LinkRelation(uri);

            return self; 

        }
        private IHttpActionResult GerarResponse(UsuarioRepresentation usuario)
        {
            if (usuario == null)
                return NotFound();

            UsuarioResourceAssembler.AddRelationLinks(usuario, Request.RequestUri);

            return Ok(usuario);

        }
        private static IEnumerable<LinkRelation> GetLinks(UsuarioRepresentation usuario, Uri requestUri)
        {
     
            //relations sempre disponíveis:
            yield return Self(usuario);
            yield return ValidarTelefone(usuario);
            yield return ListarCartoes(usuario);
            yield return AdicionarCartao(usuario);
            yield return AdicionarFavorito(usuario);
            yield return ListarFavoritos(usuario);
            yield return ListarCategoriasEstabelecimentos();
            yield return GeoLocalizarEstabelecimento();
            yield return ValidarEmailUsuarios();


            if (usuario.StatusValidacao == 0)
                yield return ValidarUsuario(usuario);
            
                    
        }
 private static LinkRelation ListarFavoritos(UsuarioRepresentation usuario)
 {
     var favoritos = new Uri(UriUsuarioIdComSegmentoComplementar("favoritos", usuario));
     var listaFavoritos = new LinkRelation("usuarios/listar-favoritos", favoritos);
     return listaFavoritos;
 }
 private static LinkRelation ValidarUsuario(UsuarioRepresentation usuario)
 {
     var uriValidacao = new Uri(UriUsuarioIdComSegmentoComplementar("validacao",usuario));
     var validacao = new LinkRelation("usuarios/validacao", uriValidacao);
     return validacao;
 }
 private static string UriUsuarioIdComSegmentoComplementar(string segmento,UsuarioRepresentation usuario)
 {
     return String.Concat(UriUsuarioComId(usuario),"/",segmento);
 }
 private static string UriUsuarioComId(UsuarioRepresentation usuario)
 {
     var uri = String.Concat(Version.FullAPIEndpoint, usuario.Id);
     return uri;
 }
 public static UsuarioRepresentation AddRelationLinks(UsuarioRepresentation usuario, Uri requestUri)
 {
     usuario.Links = new List<LinkRelation>(GetLinks(usuario, requestUri));
     return usuario;
 }