Revert "Merge pull request 'release/facade.v2.0.0' (#2) from release/facade.v2.0.0 into main"
This reverts commit2e50dacee7, reversing changes made to7c9e61ce0f. Desfazendo o merge para testar os plugins
This commit is contained in:
1 parent
2e50dacee7
commit
9b45d515ba
31 files changed
+133
-715
No files matched your search
@@ -1,13 +1,10 @@
|
||||
# pitiupi
|
||||
|
||||
Este repositório tem 4 projetos Java que são independentes:
|
||||
Ferramenta p2p para práticas em rede
|
||||
|
||||
### Sistema:
|
||||
Este repositório tem 3 projetos Java que são independentes:
|
||||
- A ferramenta pitiupi (P2P)
|
||||
|
||||
### Plugins:
|
||||
- Um plugin de Chat
|
||||
- Um plugin de Chat multiprotocolo (TCP/UDP)
|
||||
- Um plugin de ScreenCast
|
||||
|
||||
Cada um destes projetos deve ser compilado individualmente. Para isso, use a ferramenta ant no diretório do projeto.
|
||||
@@ -24,26 +21,9 @@ Para criar links simbólicos no Linux, use o comando:
|
||||
```
|
||||
cd pitiupi/plugins
|
||||
ln -s ../../pitiupi.chat/dist/*.jar .
|
||||
ln -s ../../pitiupi.mpChat/dist/*.jar .
|
||||
ln -s ../../pitiupi.screenCast/dist/*.jar .
|
||||
```
|
||||
Isso deve resolver!
|
||||
|
||||
## Como um plugin conversa com o pitiupi
|
||||
Para criar um novo plugin:
|
||||
|
||||
Um plugin nunca recebe acesso direto às classes internas do núcleo (ConnectionManager, GuiManager). Em vez disso, recebe uma facade, a classe Pitiupi, que expõe só o que um plugin precisa: enviar mensagem (multicast, unicast ou tcp), abrir conexão tcp privada, ler nome de usuário e porta, criar menu.
|
||||
|
||||
```java
|
||||
public abstract void createPlugin(Pitiupi pitiupi);
|
||||
```
|
||||
|
||||
## Para criar um novo plugin
|
||||
|
||||
1. Implemente `pitiupi.models.Plugin`, incluindo `createPlugin(Pitiupi pitiupi)`
|
||||
2. Registre a classe em `src/META-INF/services/pitiupi.models.Plugin`, com o nome completo da classe numa linha
|
||||
3. Compile com `ant jar`
|
||||
4. Linke o `.jar` em `pitiupi/plugins`
|
||||
|
||||
Use `pitiupi.chat` como referência — é o exemplo mais simples e completo.
|
||||
|
||||
Plugins que ainda não foram atualizados para a Pitiupi (como uma versão mais antiga do screenCast) não compilam contra o núcleo atual e precisam de migração antes de serem usados.
|
||||
Reference in new issue
Block a user