json support
Reported by Mauricio Aniche | May 31st, 2010 @ 11:11 AM | in upcoming release
should support json
Comments and changes to this ticket
-
Felipe Seixas June 19th, 2010 @ 08:46 PM
- Tag set to json hypermedia
Vou colocar aqui dúvidas relativas a implementação só para revalidarmos em breve:
-
Ao inserir uma hypermedia, a assinatura da interface, "string Insert(string content, IList relations)", recebe claramente o conteúdo em formato string. No caso teria que Deserializá-lo para objeto, inserir as relations e serializá-lo novamente para Json? Achei um pouco estranho isso, não sei se seria a idéia. Bom, se essa for a situação correta, então não conseguiríamos utilizar o próprio JsonDeserializer implementado, pois a interface de unmarshalling obriga que seja definido também um Type para isso.
-
Ao criar uma transição (link, hypermedia, etc) tenho que identificá-la com um nome, controller, action, url e uma lista de chave/valor (string/object). Porém ao adicioná-la de fato ao conteúdo json, só é utilizado os atributos nome e url. (vide implementação do Atom). Temos que rever isso pois os outros atributos que definem a transição estão sendo postos de lado.
-
Mauricio Aniche June 20th, 2010 @ 01:53 PM
Não entendi. O HypermediaInserter é só na hora da serialização, e não da deserialização. A idéia é que vc serialize QUALQUER objeto, e depois se ele tiver hypermedia, insere os links nele. Ele recebe uma string, pq é como TODO objeto fica depois de serializado. O hypermediaInserter apenas insere os links nos lugares certos dessa string. Na deserialização não há links.
Uma transição é composta de um nome e um link. Agora que vi que o objeto hoje tem Action, e etc. Em algum momento essa classe precisava disso, eu passei a responsabilidade pra outra, e ficou com esse lixo. Já removi isso do branch aqui e devo pushar em breve. Aliás, já está lá!
Por favor, nas próximas, escreva em inglês! :)
-
Felipe Seixas July 6th, 2010 @ 10:02 AM
- Assigned user set to Mauricio Aniche
- Milestone order changed from 0 to 0
Done.
I sent to you a pull request of my fork.
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »
c# version from restfulie