From 3509017beaba6dfb44a0db300c82ad22eb66eb51 Mon Sep 17 00:00:00 2001
From: 20013395 <20013395@studenti.uniupo.it>
Date: Mon, 11 Jul 2022 10:47:04 +0200
Subject: [PATCH] dbFunza

---
 domainManager/Domain/.classpath               |   1 -
 domainManager/Domain/DBPissirDomain.db        | Bin 40960 -> 40960 bytes
 domainManager/Domain/bin/.gitignore           |   2 +
 domainManager/Domain/bin/code/Domain.class    | Bin 1829 -> 1789 bytes
 .../Domain/bin/code/StartHandler.class        | Bin 4669 -> 5811 bytes
 domainManager/Domain/bin/db/Connect.class     | Bin 2019 -> 1223 bytes
 domainManager/Domain/bin/hibernate.cfg.xml    |  19 --
 .../Domain/resources/hibernate.cfg.xml        |  19 --
 domainManager/Domain/src/code/Domain.java     |   2 +-
 .../Domain/src/code/StartHandler.java         |  65 +++++-
 domainManager/Domain/src/db/Connect.java      |   7 +-
 domainManager/Domain/src/db/DbStart.java      | 194 ++++++++++++++++++
 domainManager/Domain/src/db/Dominio.java      |  31 +++
 13 files changed, 296 insertions(+), 44 deletions(-)
 create mode 100644 domainManager/Domain/bin/.gitignore
 delete mode 100644 domainManager/Domain/bin/hibernate.cfg.xml
 delete mode 100644 domainManager/Domain/resources/hibernate.cfg.xml
 create mode 100644 domainManager/Domain/src/db/DbStart.java
 create mode 100644 domainManager/Domain/src/db/Dominio.java

diff --git a/domainManager/Domain/.classpath b/domainManager/Domain/.classpath
index 1bf32ae..0ea2173 100644
--- a/domainManager/Domain/.classpath
+++ b/domainManager/Domain/.classpath
@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="src" path="resources"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
 		<attributes>
 			<attribute name="module" value="true"/>
diff --git a/domainManager/Domain/DBPissirDomain.db b/domainManager/Domain/DBPissirDomain.db
index ba2ee183bb4c79e7899376828cfb70a3c9ad8161..83d955e9b38a8f328dd987aab8ebf63c1b384a2f 100644
GIT binary patch
delta 74
zcmZoTz|?SnX@WE(=R_H2M$U~1%lKKYGw@&EEGTf6UsIitU0zgLR8-VCu{bdxv!Ea!
Q&d_!A3-$4V;YA7!06?A=vH$=8

delta 60
zcmZoTz|?SnX@WE($3z)tMvjdM%lKKIGVnj$EU0jsUs{rpU0zh2mzTjgu{bdxv!Ea!
J&RC?-001Pf5{3W(

diff --git a/domainManager/Domain/bin/.gitignore b/domainManager/Domain/bin/.gitignore
new file mode 100644
index 0000000..99591d4
--- /dev/null
+++ b/domainManager/Domain/bin/.gitignore
@@ -0,0 +1,2 @@
+/db/
+/code/
diff --git a/domainManager/Domain/bin/code/Domain.class b/domainManager/Domain/bin/code/Domain.class
index 4c972884eb871e707d8499e1a6307cd0b0ebb691..4d24031e06dd6fed51cdd610b1560d4b6aa73904 100644
GIT binary patch
delta 516
zcmX|-%}x_h7>1uS)6g;&Qd@r_2}D^)OPfrHHWm|6p(;qL{Ff?!W9LXsCLO3XMp<wJ
z?q==M3jmTroW!{HD%^P$8b4an&CERSdER{AnQw!C2drQJzW)I3Q9rVNtD#gwf1Gh@
zb?vUyo7!;~eBV=~)0t9W8&`u3GZx%3{=_DE80Qg>gS%!vKcnck-!<O19M7|(JW-@-
zzN_uIZZzvOTu(PGiX<#1nT<2Y^Wdwwe^^pPZRs^z(tDw}-03Z!2fbFAM2tm6pNRgR
zc*}~!h3D_}w54-xO%bzQ?dg^lab1z@h{aCQQ!Cv)UdIhKPQFAARR1L+nDQ4s2Z_GX
z!!xo!nJ9(asUBmUk~hyNlyliOQ@P}HNU?g#(>Bj4x#WCES?Fb#7DASUR=TtrQW2_l
zsLiV*<bn(_%$N*|%eeat$}=fxO7bgma*YwZ>x^=Pj6?-)@_^gSOQlMhT}eNX<r6su
tq&hBp%hqhNCGQcTZFXc#hD99S$X9`BYPc9^F`^ioQN|*2@K(@Z_dlqKZy5jp

delta 529
zcmX|;-%b-j6vltk7Pf8{ty{T}D2YbJmL?k`jW#hTf=IOpLbX<@TDqeY)?KYl{1^2J
zyxM2*0nns0ZeqOlDSQKc0gb2KgqxZ9edm1n&dmHB`+U&+`S06z-~!Kf&0lK5_Vug9
z_G|4{w>rA%t_Fdp$ek_cDxs4Y5055(7cMhra7AIdo6daT`?}S&xJp`Kv|=<Vv0!nH
z#W0gB&MYa?PTPOkZF-);4MnyUxY{Yl%2LyJJ>4-WlNlJ7EpD+AzD>TExvdy=#MbE=
ztSb%=ZR-QxH?5ILb5}7UeZg~sd*O-Hc(FE6AILzCt3BP-1`UNhv@Z;Weg8%r`q-lR
z)l0oo2ePC{%7c6e|BRgcnC>(EgL9RL^Yt&7dlZv>E-v?(Ell^AFWA>3%Jn^N_Ndef
z_G-kMP&KAI5jCNDO!p%;gdPs5$D>{3Moe&=DG9VBa+X7~+M;GfKO&Xz)2O+f7btOz
zOH4AyDONa5gEQ=i@eMiNlV?nfd6``1W|NlelR_?9Lh@93!c#ew<V&__lVDpq3=$24
Msgx9U1QU4w0YyA>YXATM

diff --git a/domainManager/Domain/bin/code/StartHandler.class b/domainManager/Domain/bin/code/StartHandler.class
index 049e5c28163c3bd27fa089afe48070e2ecb5ab73..2b0d8b50562d1178a83b2a73c8696e147f52512e 100644
GIT binary patch
literal 5811
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
VrK&7(oWvi)%2<NsRFY}3;(tJ1+0g(1

literal 4669
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
Bx9|V}

diff --git a/domainManager/Domain/bin/db/Connect.class b/domainManager/Domain/bin/db/Connect.class
index c6c17fddfd2ba8900522c262127d4fa802a551e1..ea4b8b874d0b364bd2e96efdc092ef355af6159c 100644
GIT binary patch
delta 502
zcmZ{f%}N4M7>3{DPm|M+C7DS?Ey|x6e@aU&C0dkFjzJU#trQ)kC@qv|C#|}Gxd_*`
zkZMt@3R<=43c7-BAbT^6HZjbc_j|tYJm<{2{n;kJeBRvyh$GdKA4Nol2R;d20q0TS
zyb!LP9fx;!w2h0Rep)}QRtDjRA|RLbdRDL13T54RHM{!)2uTPUA7Vm;jf5p_yjh}R
z*|1r!8sZWrSa?KLWE^%)y}@Ya8ZO6F8`Dj!Ys_jJbF7pnWR+W}0_5A|!5`j4EX$s&
z*Bk!R3q1VSX~D{a9Su17OEXXq<Z5C{@-8W)vB^4zJc?Y+kV$i#1;#k#;$}D5BpmQ!
z96s(-F^d2_AwFSR{IsZ8BTJKPk?moD4iyJvd9o5&qk;$qs9i-L#V45O5U3v_k3vu`
zV-ZVCA*L9UnX+Cg{iZl~CD7mD9fiaL`0?!X%}PjgXfuC9=59mo(AOOsfyN=3<q8ER
GB)<T7ZBd>8

literal 2019
zcma)6+jA3T6#so`(oNGvYI-A;LO@#5ls0HpGy%lkP@43Xv|LnllYDKrB)f5UQwuW=
ze*wb-PdJXR9cO$H9|E;A`XrA2QP$rkP11B=#$LWX-#O<y*WWq+{QKMQ04~8$;1LMq
zv#}}DFl5eA;1%fF)V8!(K{M843)xL_1==s`hVEPyXp4-j3V5f?ybPcX9V&ci7dW2O
z4LM&fW~G(UvIQv+Oqw~Zu&P<Qdp}@$oekX<P?JrM2>~TnbM8l%z~E*+n~U4u6m&<%
zrzaP6+t#gVv#9CDcs?6I5IqXI1^TK%QZF`b>08oDX@<5gEfu}!6F9amor9Eg(-0Vm
zB%4X49ZNUX6C*X2Yoe)|=)egKC<wKbA${L=WKqRiILQ*2WmcrO_F6Y%i?rs@rqqfF
zKTZimo94of8BQ-HnM-&>v%^^_jj*&GmPEHVWPUt=FwQDCBhX!quhpE2w{ed3DY+gB
zOr!TzX{`D&EYOplNzP1V!qM>T@<J-S;z+~MI}t%t!ARYFYpyCrae=+dF?2_!9Ueu#
zVr?UbYSZ8+Ix&um3Sw+-qxcP}ig)lXTPwF^uI$LAvb63CL|zqev+m2%E*G4%bXd6e
z2&)xaTAla+A1b(X*h@oC#Ycz>bg;d(E(#34-bEF{2i^ALG964yJEwp+?mr5L$+BL^
zODlkDm{jmdYx}E!Q89&Sc4JE`l;y(O5zn<rse|gU=K!u?)}51cF7>I3&v1hirIkw3
z$P0}9ulNtbOSmSIDpHsi@H=L`2tD<V9d_(ia#6(+mYKOBx7k^a@0|cLSXHn>I5pe2
zl$_bl$&$lqQE}6?9$<}A(zZEOE{txgxZ_T`FIO;a&bQYc+Qt~P0*f=<R<;W65;$6B
zS43sDkW)~{TTc@a4Lnh?-KxTa*lx-jNTA$nXhk=YJew*YNcJ}sIdzSUsOyp2+zPaw
zyO+{R)pexcUVSdARm*Hx=C`%w6-b+9D<@}lcay0H<2>%>f-_(ST%Lf36qg@Qg|`^L
zf?r?sIsDJ6;s8%q47`C(o@z~j-($RWkbCgha~)pZfxpCD@OX0c1>T(d75%}%3Qh-y
zQqf(U7nmQru!}Jd;@%xhguKCtUA)hmk7S}ow)4#%uG|j!Uf|>Bm<hF4aJ_;#S_ye~
zu^{mM{@**ek)+;e1!?l5FR?=Nw*+>OjQc4F`D>CLT#hRghw9?47I8@V<MqO4tcwR(
zNFuF-2l$R(52;5?@iCs_2i|{11-tyV!7bAk26=W<tB-F_kT<|hf0E05kmo53;WRNA
z#stpdD!1Y--m@6S8qU*h6b@I}1B~GzSJWeFJ|^!8c~8mvk-VR9kshP?g}e%Rd*r?3
z#&X+I;_1Pk_#9vG=EIl#y~|eha>~9U<zWP~_!=5x9pd<9kz>0iNarc_F`fZtdY8>y
zW87<4=i7(0xk1WL?{#XgLFx39L13SO`V>SIT&w<#D;!wF_FbTm?H-w%{9jP8xlgqC
aU1s%%jH*=KXLMCvB&p~EtUv`1ivIz`65tyE

diff --git a/domainManager/Domain/bin/hibernate.cfg.xml b/domainManager/Domain/bin/hibernate.cfg.xml
deleted file mode 100644
index c9a4417..0000000
--- a/domainManager/Domain/bin/hibernate.cfg.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
-"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd%22%3E
-
-<hibernate-configuration>
-    <session-factory>
-        <property name="show_sql">true</property>
-        <property name="format_sql">true</property>
-        <property name="dialect">org.hibernate.dialect.SQLiteDialect</property>
-        <property name="connection.driver_class">org.sqlite.JDBC</property>
-        <property name="connection.url">jdbc:sqlite:/home/ale/Scrivania/DBPissirDomain.db</property>
-        <property name="connection.username"></property>
-        <property name="connection.password"></property>
-
-        <property name="hibernate.hbm2ddl.auto">update</property>
-
-        <mapping class="com.srccodes.example.hibernate.Contact"/>
-    </session-factory>
-</hibernate-configuration>
\ No newline at end of file
diff --git a/domainManager/Domain/resources/hibernate.cfg.xml b/domainManager/Domain/resources/hibernate.cfg.xml
deleted file mode 100644
index c9a4417..0000000
--- a/domainManager/Domain/resources/hibernate.cfg.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
-"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd%22%3E
-
-<hibernate-configuration>
-    <session-factory>
-        <property name="show_sql">true</property>
-        <property name="format_sql">true</property>
-        <property name="dialect">org.hibernate.dialect.SQLiteDialect</property>
-        <property name="connection.driver_class">org.sqlite.JDBC</property>
-        <property name="connection.url">jdbc:sqlite:/home/ale/Scrivania/DBPissirDomain.db</property>
-        <property name="connection.username"></property>
-        <property name="connection.password"></property>
-
-        <property name="hibernate.hbm2ddl.auto">update</property>
-
-        <mapping class="com.srccodes.example.hibernate.Contact"/>
-    </session-factory>
-</hibernate-configuration>
\ No newline at end of file
diff --git a/domainManager/Domain/src/code/Domain.java b/domainManager/Domain/src/code/Domain.java
index 6bef093..5ba15ca 100644
--- a/domainManager/Domain/src/code/Domain.java
+++ b/domainManager/Domain/src/code/Domain.java
@@ -25,7 +25,7 @@ public class Domain {
 		ThreadPoolExecutor threadPoolExecutor = (ThreadPoolExecutor)Executors.newCachedThreadPool();////newFixedThreadPool(5)
 		HttpServer server=HttpServer.create(new InetSocketAddress(port),0);
 		
-		Connect.connect();
+		//Connect.connect();
 		
 		
 		
diff --git a/domainManager/Domain/src/code/StartHandler.java b/domainManager/Domain/src/code/StartHandler.java
index e35489a..65d4127 100644
--- a/domainManager/Domain/src/code/StartHandler.java
+++ b/domainManager/Domain/src/code/StartHandler.java
@@ -10,14 +10,20 @@ import java.io.Reader;
 import java.net.HttpURLConnection;
 import java.net.URI;
 import java.net.URL;
+import java.sql.SQLException;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
+import com.sun.net.httpserver.Headers;
 import com.sun.net.httpserver.HttpExchange;
 import com.sun.net.httpserver.HttpHandler;
 
+import db.DbStart;
+import db.Dominio;
+
 public class StartHandler implements HttpHandler {
 
 	@Override
@@ -44,8 +50,58 @@ public class StartHandler implements HttpHandler {
 		String query = requestedUri.getRawQuery();
 		String body = readBody(he.getRequestBody());
 		String response = "AYYYYY";
+		String user= he.getRequestHeaders().get("user").get(0);
+		
+		//se dominio del body ha admin chi fa chiamata allora continua
 		
 		if(requestMethod.compareToIgnoreCase("POST")==0) {
+				String dominio=body.substring(7);
+				System.out.println(requestMethod+"\n"+query+"\n"+body+"\n"+response+"\n"+user+"\n"+dominio+"\n");
+				
+				try {
+					System.out.println("PreDB");
+					//ArrayList<Dominio> doms=DbStart.domainsGet();
+					System.out.println("PostDB");
+					Dominio d= DbStart.getDom(dominio);
+					String s=user+"-A";
+					/*
+					for(Dominio d : doms){
+					       if( (d.getDomain() == dominio) && d.getUsers().contains(s))
+					           //something here
+					    	   System.out.println("OPERAZIONE NON IMPLEMENTATA");
+					         he.sendResponseHeaders(401,response.length());
+					         OutputStream os = he.getResponseBody();
+					         os.write("NON AUTORIZZATO".getBytes());
+					         os.close();
+					         return;
+					   }
+					*/
+					if(!d.getUsers().contains(s)) {
+						 //he.sendResponseHeaders(401,0 );
+						 System.out.println("NON AUTORIZZATO");
+						 response="NON AUTORIZZATO";
+				         he.sendResponseHeaders(401,response.length());
+				         OutputStream os = he.getResponseBody();
+				         
+				         os.write(response.getBytes());
+				         os.close();
+				         
+				         //System.out.println("OPERAZIONE NON IMPLEMENTATA");
+				         //he.sendResponseHeaders(501,0);
+				         //OutputStream os = he.getResponseBody();
+				         //os.write("OPERAZIONE NON IMPLEMENTATA".getBytes());
+				         //os.close();
+				         
+				         return;
+					}
+					
+				} catch (SQLException e) {
+					// TODO Auto-generated catch block
+					e.printStackTrace();
+				}
+				
+				
+			
 			 	URL url = new URL("http://localhost:3000/start");//maybe, se CloudApp è in localhost porta 8080
 		        HttpURLConnection con = (HttpURLConnection) url.openConnection();
 		        con.setRequestMethod("POST");
@@ -55,18 +111,19 @@ public class StartHandler implements HttpHandler {
 		        Map<String, String> parameters = new HashMap<>();
 		        System.out.println("pino1");
 		        //{“domain”:”nome_dominio”} check utente chiamante ha permessi su dominio chiamato, chi fa install è admin
+		        
 		        parameters.put("param1", "val");//fix parametri da mandare
 		        //leggo da DB domini e riempio (magari famo .DAO??)
 
 		        
 		        con.setDoOutput(true);
-		        System.out.println("pino2");
+		        //System.out.println("pino2");
 		        DataOutputStream out = new DataOutputStream(con.getOutputStream());//inserimento param in call
 		        out.writeBytes(ParameterStringBuilder.getParamsString(parameters));
 		        
 		        out.flush();
 		        out.close();
-		        System.out.println("pino3");
+		        //System.out.println("pino3");
 
 		        //con.setRequestProperty("Content-Type", "application/json");
 		        //String contentType = con.getHeaderField("Content-Type");
@@ -120,6 +177,10 @@ public class StartHandler implements HttpHandler {
             os.close();
         }
 	}
+	
+	
+	
+	
 		
 		private String readBody(InputStream requestBody) {
 	        int req;
diff --git a/domainManager/Domain/src/db/Connect.java b/domainManager/Domain/src/db/Connect.java
index 2217ef2..dec5a1a 100644
--- a/domainManager/Domain/src/db/Connect.java
+++ b/domainManager/Domain/src/db/Connect.java
@@ -15,6 +15,7 @@ public class Connect {
      /**
      * Connect to a sample database
      */
+	//public static Connection conn = null;
     public static void connect() {
         Connection conn = null;
         try {
@@ -24,7 +25,7 @@ public class Connect {
             conn = DriverManager.getConnection(url);
             
             System.out.println("Connection to SQLite has been established.");
-            
+            /*
             String sql= "SELECT * FROM Utenti";
             Statement statement =conn.createStatement();
             ResultSet result =statement.executeQuery(sql);
@@ -33,7 +34,7 @@ public class Connect {
             	
             	String desc=result.getString("Desc");
             	System.out.println(name+desc);
-            }
+            }*/
             
         } catch (SQLException e) {
             System.out.println(e.getMessage());
@@ -47,6 +48,8 @@ public class Connect {
             }
         }
     }
+    
+ 
     /**
      * @param args the command line arguments
      */
diff --git a/domainManager/Domain/src/db/DbStart.java b/domainManager/Domain/src/db/DbStart.java
new file mode 100644
index 0000000..4208277
--- /dev/null
+++ b/domainManager/Domain/src/db/DbStart.java
@@ -0,0 +1,194 @@
+package db;
+
+
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.ArrayList;
+import java.util.Arrays;
+import db.Connect;
+
+/**
+ *
+ * @author sqlitetutorial.net
+ */
+public class DbStart {
+     /**
+     * Connect to a sample database
+     */
+	//static Connection conn = null;
+    /*
+	public static void connect() {
+        
+        try {
+            // db parameters
+            String url = "jdbc:sqlite:DBPissirDomain.db";
+            create a connection to the database
+            conn = DriverManager.getConnection(url);
+            
+            System.out.println("Connection to SQLite has been established.");
+            
+            System.out.println("OIOI");
+        } catch (SQLException e) {
+            System.out.println(e.getMessage());
+        } finally {
+            try {
+                if (conn != null) {
+                    conn.close();
+                }
+            } catch (SQLException ex) {
+                System.out.println(ex.getMessage());
+            }
+        }
+    }
+    */
+    public static ArrayList<Dominio> domainsGet() throws SQLException {
+    	//connect();
+    	
+    	
+    	
+    	     /**
+    	     * Connect to a sample database
+    	     */
+    		//public static Connection conn = null;
+    	    
+    	        Connection conn = null;
+    	        try {
+    	            // db parameters
+    	            String url = "jdbc:sqlite:DBPissirDomain.db";
+    	            // create a connection to the database
+    	            conn = DriverManager.getConnection(url);
+    	            
+    	            System.out.println("Connection to SQLite has been established.");
+    	            /*
+    	            String sql= "SELECT * FROM Utenti";
+    	            Statement statement =conn.createStatement();
+    	            ResultSet result =statement.executeQuery(sql);
+    	            while (result.next()) {
+    	            	String name=result.getString("User");
+    	            	
+    	            	String desc=result.getString("Desc");
+    	            	System.out.println(name+desc);
+    	            }*/
+    	            
+    	            String sql= "SELECT * FROM Domini";
+    	            Statement statement =conn.createStatement();
+    	            ResultSet result =statement.executeQuery(sql);
+    	            System.out.println("57");
+    	            ArrayList<Dominio> res=new ArrayList <Dominio>();
+    	            while (result.next()) {
+    	            	System.out.println("60");
+    	            	String dom=result.getString("Domain");
+    	            	String desc=result.getString("Desc");
+    	            	
+    	            	//String users=result.getString("Users");
+    	            	ArrayList<String> users = new ArrayList<String>(Arrays.asList(result.getString("Users").split(",")));
+    	            	ArrayList<String> reso = new ArrayList<String>(Arrays.asList(result.getString("Resources").split(",")));
+    	            	//String reso=result.getString("Resources");
+    	            	
+    	            	String state=result.getString("State");
+    	            	ArrayList<String> serv = new ArrayList<String>(Arrays.asList(result.getString("Services").split(",")));
+    	            	//String serv=result.getString("Services");
+    	            	Dominio d=new Dominio(dom,desc,users,reso,state,serv);
+    	            	res.add(d);
+    	            	System.out.println("74");
+    	            	
+    	            }
+    	            return res;
+    	            
+    	        } catch (SQLException e) {
+    	            System.out.println(e.getMessage());
+    	        } finally {
+    	            try {
+    	                if (conn != null) {
+    	                    conn.close();
+    	                }
+    	            } catch (SQLException ex) {
+    	                System.out.println(ex.getMessage());
+    	            }
+    	        }
+				return null;
+    	    
+    	
+    	
+        
+    }
+    
+    public static Dominio getDom(String dm) throws SQLException {
+    	//connect();
+    	//Statement statement =conn.createStatement();
+    	
+    	
+        
+        Connection conn = null;
+        try {
+            // db parameters
+            String url = "jdbc:sqlite:DBPissirDomain.db";
+            // create a connection to the database
+            conn = DriverManager.getConnection(url);
+            
+            System.out.println("Connection to SQLite has been established.");
+            /*
+            String sql= "SELECT * FROM Utenti";
+            Statement statement =conn.createStatement();
+            ResultSet result =statement.executeQuery(sql);
+            while (result.next()) {
+            	String name=result.getString("User");
+            	
+            	String desc=result.getString("Desc");
+            	System.out.println(name+desc);
+            }*/
+            
+            PreparedStatement prepared = conn.prepareStatement("SELECT * FROM Domini WHERE Domain = ?");
+        	prepared.setString(1, dm);
+        	ResultSet result = prepared.executeQuery();
+        	
+        	
+        	//String sql= "SELECT * FROM Domini WHERE Domain = ?";
+            
+            //ResultSet result =statement.executeQuery(sql);
+            //Dominio res=new Dominio();
+            while (result.next()) {
+            	
+            	String dom=result.getString("Domain");
+            	String desc=result.getString("Desc");
+            	
+            	//String users=result.getString("Users");
+            	ArrayList<String> users = new ArrayList<String>(Arrays.asList(result.getString("Users").split(",")));
+            	ArrayList<String> reso = new ArrayList<String>(Arrays.asList(result.getString("Resources").split(",")));
+            	//String reso=result.getString("Resources");
+            	
+            	String state=result.getString("State");
+            	ArrayList<String> serv = new ArrayList<String>(Arrays.asList(result.getString("Services").split(",")));
+            	//String serv=result.getString("Services");
+            	Dominio d=new Dominio(dom,desc,users,reso,state,serv);
+            	//res.add(d);
+            	return d;
+            }
+            return null;
+            
+        } catch (SQLException e) {
+            System.out.println(e.getMessage());
+        } finally {
+            try {
+                if (conn != null) {
+                    conn.close();
+                }
+            } catch (SQLException ex) {
+                System.out.println(ex.getMessage());
+            }
+        }
+		return null;
+    
+        
+    }
+    /**
+     * @param args the command line arguments
+     */
+    //public static void main(String[] args) {
+    //    connect();
+    //}
+}
diff --git a/domainManager/Domain/src/db/Dominio.java b/domainManager/Domain/src/db/Dominio.java
new file mode 100644
index 0000000..4ff619e
--- /dev/null
+++ b/domainManager/Domain/src/db/Dominio.java
@@ -0,0 +1,31 @@
+package db;
+
+import java.util.ArrayList;
+
+public class Dominio {
+	
+	String domain;
+	public String desc;
+    ArrayList<String> users;
+	public ArrayList<String> resources;
+	public String state;
+	public ArrayList<String> services;
+	
+	public Dominio(String dom, String de, ArrayList<String> u, ArrayList<String> res, String st, ArrayList<String> ser) {
+		domain=dom;
+		desc=de;
+		users=new ArrayList<String>(u);
+		resources=new ArrayList<String>(res);
+		state=st;
+		services=new ArrayList<String>(ser);
+	}
+	
+	public String getDomain() {
+		return domain;
+	}
+	
+	public ArrayList<String> getUsers(){
+		return users;
+	}
+
+}
-- 
GitLab