gerando valor ActionScript objetos de um esquema XSD
-
10-07-2019 - |
Pergunta
Existem algumas ferramentas disponíveis para transformar tipos definidos em um esquema XSD (pode ou não incluir outros arquivos XSD) em objetos de valor do ActionScript? Estive pesquisando isso por um tempo, mas não consigo encontrar quaisquer ferramentas e eu estou pensando wether escrevendo essa ferramenta nos pouparia mais tempo agora do que simplesmente código nosso valor objetos com a mão.
Outra possibilidade que eu estive pensando está usando uma ferramenta como o XMLBeans para transformar os tipos definidos pelo esquema de classes Java e, em seguida, converter essas classes no ActionScript. No entanto, eu vim a perceber que há cerca de um java gazillion -.> Conversores AS3 lá fora eo consesus geral parece ser que eles tipo de trabalho, ou seja, eu não tenho idéia de qual ferramenta é um bom ajuste
Qualquer pensamento?
Solução
Para Java -> AS geração, veja GAS3 do projeto Granite Data Services:
http://www.graniteds.org/ confluência / display / DOC / 2. + Gas3 Código + + Gerador
Este é o tipo de coisa que você pode escrever-se muito, especialmente se você aproveitar uma ferramenta como Ant e escrever uma tarefa personalizada para lidar com isso. Na verdade, eu trabalhei neste último ano e código aberto-lo:
Outras dicas
Eu não tenho qualquer tipo de tradutor quer. O que faço é ter um objeto XML envolto por um objeto ActionScript. Então você tem um getter / setter para cada valor que convertidos em XML> o que quer e whatever-> XML. Você ainda tem que escrever o getter / setter embora, mas você pode ter um macro / snippit pega esse trabalho para você.
Assim, para XML como:
<person>
<name>Bob</name>
...
</person>
Então nós temos um objeto XML Wrapper classe e estendê-lo. Normalmente
class XMLObjectWrapper
{
var _XMLObject:XML;
function set XMLObject(xml:XML):void
{
_XMLObject = xml;
}
function get XMLObject():XML
{
return _XMLObject;
}
}
class person extends XMLObjectWrapper
{
function set name(value:String):void
{
_XMLObject.name = value;
}
function get name():String
{
return _XMLObject.name;
}
}