source: ether_core/trunk/kit/interactifKit/zipContent/src/InteractifServiceServlet.java @ 784

Last change on this file since 784 was 6, checked in by cbipsl, 18 years ago

ajout rep ether

  • Property svn:executable set to *
File size: 3.5 KB
Line 
1import javax.servlet.*;
2import javax.servlet.http.*;
3import java.io.*;
4import java.util.*;
5
6import java.rmi.*;
7import fr.alcatel.ether.tools.*;
8import fr.alcatel.ether.app.common.*;
9import fr.alcatel.ether.app.exception.EtherException;
10import fr.alcatel.ether.bean.ServiceInfoBean;
11
12public class InteractifServiceServlet extends HttpServlet
13{
14       
15        /** Flag pour debug */
16        private static boolean DEBUG = true;
17       
18       
19        public static String SERVLET_CALL = "/servlet/InteractifServiceServlet";
20
21       
22        public void init()
23        {
24                Config.getConfig();
25                Trace.getTrace("ether");
26        }
27       
28        /**
29        * Méthode service
30        *
31        * @param request
32        * @param response
33        */
34        public void service( HttpServletRequest request, HttpServletResponse response ) throws IOException, ServletException
35        {       
36                try {
37                Config.getConfig();
38               
39                PrintWriter out = response.getWriter();
40                response.setContentType("text/html");
41               
42                out.println("<html><head></head><body>");
43                out.println(" LISTE DES PARAMETRES :\n");
44                Enumeration en = request.getParameterNames();
45                String s;
46                while ( en.hasMoreElements())
47                {
48                        s = (String)en.nextElement();
49                        out.println(s + " = " + request.getParameter(s) + "\n");
50                }
51               
52                out.println(" LISTE DES ATTRIBUTS :\n");
53                en = request.getAttributeNames();
54                while ( en.hasMoreElements())
55                {
56                        out.println((String)en.nextElement());
57                }
58               
59                // Récupérer l'action à effectuer
60                String actionString = request.getParameter( Constants.ACTION );
61                int action = -1;
62               
63                if( actionString != null ) 
64                {
65                        action = Integer.parseInt( actionString );
66                }
67
68                HttpSession session = request.getSession();
69
70                switch( action )
71                {
72                        case 1 :
73                                {
74                                        // affichage d'un bouton conduisant à l'action deux
75                                        out.println("<form method=\"post\" action=\"" + SERVLET_CALL + "?action=2\">");
76                                        out.println("<input type=\"submit\" name=\"Submit\" value=\"Result Copie\"></form>");
77                                }
78                        break;
79                        case 2 :
80                                {
81                                        try {
82               
83                                        ServiceInfoBean bean = (ServiceInfoBean) session.getValue("interactifInfo");
84                                        FileManager fileMgr = (FileManager)FileManager.instance( FileManager.class.toString() );
85                       
86                                        // création du répertoire de sortie dans l'espace utilisateur
87                                        if ( !fileMgr.mkdir( new RemoteFileImpl(bean.getUserHost(),bean.getOutUserDir()) ) ) {
88                                                 out.println("Error creating directories");
89                                                 break;
90                                        }
91                                       
92                                        // copie des fichiers résultats
93                                        RemoteFile sourceDir = new RemoteFileImpl(bean.getServiceHost(),bean.getOutServiceDir());
94                                        RemoteFileManager manager = sourceDir.getFileManager();
95                                        ArrayList files = manager.list( sourceDir );
96                                        for ( Iterator file = files.iterator(); file.hasNext(); ) {
97                                                RemoteFile f = (RemoteFile)file.next( );
98                                                if ( DEBUG ) { Trace.debug( this, "absolute path  = " + f.getAbsolutePath() ); }
99                                                if ( DEBUG ) { Trace.debug( this, "path           = " + f.getPath() ); }
100                                                RemoteFileImpl destFile = new RemoteFileImpl( bean.getUserHost(), f.getPath() );
101                                                destFile.setBaseDir( bean.getOutUserDir() );
102                                                f.getFileManager().move(f,destFile);
103                                        }
104                                        // suppression du répertoire d'exécution du service
105                                        RemoteFile dirToDelete = new RemoteFileImpl(bean.getServiceHost(),bean.getServiceDir());
106                                        manager = dirToDelete.getFileManager();
107                                        manager.deleteDir(dirToDelete);
108                                        }
109                                        catch ( NotBoundException e )
110                                        {
111                                                out.println("Error connecting rmi serveur" + e.toString());
112                                        }
113                               
114                                }
115                        break;
116                        default:
117                                break;
118                }
119               
120                out.println("</body></html>");
121               
122                }
123                catch( Exception e )
124                {
125                        System.out.println(e.toString());       
126                }
127        }
128}
Note: See TracBrowser for help on using the repository browser.