From ec419bbd043679c635b29b1fb5ec9e4c3b58e620 Mon Sep 17 00:00:00 2001
From: Inso <insomniak.fr@gmail.com>
Date: Fri, 22 May 2015 08:11:13 +0200
Subject: [PATCH] Ajout de la documentation API

---
 doc/uml/api.png | Bin 0 -> 14132 bytes
 doc/uml/api.pu  |  21 +++++++++++++++++++++
 2 files changed, 21 insertions(+)
 create mode 100644 doc/uml/api.png
 create mode 100644 doc/uml/api.pu

diff --git a/doc/uml/api.png b/doc/uml/api.png
new file mode 100644
index 0000000000000000000000000000000000000000..a7e3336901352dc647ce916c06bc2eb880eae469
GIT binary patch
literal 14132
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

literal 0
HcmV?d00001

diff --git a/doc/uml/api.pu b/doc/uml/api.pu
new file mode 100644
index 00000000..f4a6ca46
--- /dev/null
+++ b/doc/uml/api.pu
@@ -0,0 +1,21 @@
+@startuml
+
+package api {
+	package api.bma {
+		class BMADataAccess {
+			{static} _cache
+			{static} _request(req : Request, network)
+			{static} _post(req : Request, network)
+			{static} _broadcast(req : Request, network)
+		}
+		BMADataAccess ..> api.bma.API
+	}
+	package api.es {
+			class ESDataAccess {
+			}
+			ESDataAccess ..> api.es.API
+	}
+
+}
+
+@enduml
\ No newline at end of file
-- 
GitLab