Olá pessoal!
Estou em um dilema aqui no trabalho e gostaria de sugestões por parte de vocês. Tenho um projeto web aqui que comunica-se com hardware via protocolo UDP. Para resolver esse “desafio”, foi criado uma espécie de middleware, que comunica-se com o hardware e com o banco de dados. Dessa forma, a aplicação web não tem necessidade de conversar diretamente com o hardware, interfaceando somente com o banco. Até aí tudo bem, o projeto foi muito bem sucedido.
PORÉM…
Agora surgiu a necessidade de fornecer o suporte a esse hardware para aplicativos de terceiros. A ideia é disponibilizar uma biblioteca com as funções de comunicação, de forma que quem deseje integrar seu software com esses hardwares, utilize essa biblioteca. A ideia levantada na reunião do projeto foi a de transformar o middleware em uma DLL. Aí, pelo menos ao meu ver, o bicho pega. O middleware foi todo codificado em Java. No Java, eu consigo acessar uma DLL via JNA. Eu consigo também exportar uma biblioteca simplesmente na forma de um Jar. Mas… e pra transformar isso em uma DLL? Que possibilite a importação em aplicativos, por exemplo, feitos em Delphi ou mesmo em C#? Estou analisando possibilidade de recodificar todo o middleware em C++ ou talvez C#… ainda não sei.
Por isso peço a opinião de vocês aqui do fórum. Quais soluções eu teria nesse caso?

