Revision 5246 branches/MULTITHREADING_DEVELOPMENT/libraries/libRemoteServices/src/org/gvsig/remoteClient/taskplanning/retrieving/RequestManager.java
RequestManager.java | ||
---|---|---|
114 | 114 |
URLRetrieveTask task = new URLRetrieveTask(request); |
115 | 115 |
return (URLRetrieveTask) serverQueue.put(task); |
116 | 116 |
} |
117 |
|
|
118 |
// // TODO canviar per a quetorne el Request antic, que la request guarde el |
|
119 |
// // seu estat aix? com la llista de listeners |
|
120 |
// File f = getPreviousDownloadedURLRequest(request); |
|
121 |
// |
|
122 |
// if (f!=null) { |
|
123 |
// // The file was already requested and it is in the cache or |
|
124 |
// // the download is in process |
|
125 |
// |
|
126 |
// // Overwrite the file name with the file in the cache's one. |
|
127 |
// request.setFileName(f.getAbsolutePath()); |
|
128 |
// System.out.println(request.getUrl()+" is cached at '"+f.getAbsolutePath()+"'"); |
|
129 |
// |
|
130 |
// |
|
131 |
// // get this server's task queue |
|
132 |
// RetrieveQueue serverQueue = (RetrieveQueue) getQueue(request.getHost()); |
|
133 |
// |
|
134 |
// // Look up the previous cached jobs |
|
135 |
// |
|
136 |
// URLRetrieveTask workingTask = serverQueue.getURLPreviousRequest(request); |
|
137 |
// if (workingTask == null) { |
|
138 |
// // Task already done. Notify listener |
|
139 |
// if (debug) |
|
140 |
// System.err.println("done job found: "+request.getUrl()); |
|
141 |
// RetrieveEvent event = new RetrieveEvent(); |
|
142 |
// event.setType(RetrieveEvent.REQUEST_FINISHED); |
|
143 |
// listener.transferEventReceived(event); |
|
144 |
// |
|
145 |
// } else { |
|
146 |
// // The task is working yet, will register the listener |
|
147 |
// |
|
148 |
// // TODO no va b?... perqu? la cola va buidant-se molt r?pidament |
|
149 |
// // per a fer que vaja tamb? hi hauria que registrar en cache |
|
150 |
// // lo que s'est? baixant al principi de l'execute(); |
|
151 |
// if (debug) |
|
152 |
// System.err.println("working job found: "+request.getUrl()); |
|
153 |
// workingTask.addRetrieveListener(listener); |
|
154 |
// |
|
155 |
// } |
|
156 |
// } else { |
|
157 |
// // Pick an unrepeatable fileName |
|
158 |
// String host = request.getHost(); |
|
159 |
// String fileName = request.getFileName(); |
|
160 |
// File tempDir = new File(tempDirectoryPath); |
|
161 |
// if (!tempDir.exists()) |
|
162 |
// tempDir.mkdir(); |
|
163 |
// String fileNamePrefix = tempDirectoryPath + |
|
164 |
// File.separator + host + |
|
165 |
// "-" ; |
|
166 |
// if (fileName.startsWith(fileNamePrefix)) |
|
167 |
// fileName = fileName.substring(fileNamePrefix.length(), fileName.length()); |
|
168 |
// |
|
169 |
// // get this server's task queue |
|
170 |
// RetrieveQueue serverQueue = (RetrieveQueue) getQueue(request.getHost()); |
|
171 |
// |
|
172 |
// |
|
173 |
// fileName = fileNamePrefix + fileName; |
|
174 |
// |
|
175 |
// request.setFileName(fileName); |
|
176 |
// |
|
177 |
// // TODO |
|
178 |
// // jo ac? comprovaria quin protocol, m?tode, host, etc... i crearia un |
|
179 |
// // objecte que tractara la desc?rrega segons el m?tode que li toca. |
|
180 |
// // algo en plan Strategy's |
|
181 |
// // |
|
182 |
// // per exemple si fem URLRetrieveTask una abstracta i tenim |
|
183 |
// // |
|
184 |
// // GET de tota la vida |
|
185 |
// // serverQueue.put(new HTTPGetRetrieveTask(request, listener)); |
|
186 |
// // |
|
187 |
// // POST |
|
188 |
// // serverQueue.put(new HTTPPostRetrieveTask(request, listener)); |
|
189 |
// // |
|
190 |
// // FTP |
|
191 |
// // serverQueue.put(new FTPRetrieveTask(request, listener)); |
|
192 |
// // |
|
193 |
// // ????Xarxa local????? |
|
194 |
// // serverQueue.put(new SMBRetrieveTask(request, listener)); |
|
195 |
// |
|
196 |
// // Enqueue the request and the listener will be notified when done. |
|
197 |
// URLRetrieveTask task = new URLRetrieveTask(request, listener); |
|
198 |
// return (URLRetrieveTask) serverQueue.put(task); |
|
199 |
// } |
|
200 | 117 |
} catch (MalformedURLException e) { |
201 | 118 |
e.printStackTrace(); |
202 | 119 |
} |
... | ... | |
235 | 152 |
* @param url |
236 | 153 |
* @param filePath |
237 | 154 |
*/ |
238 |
protected void addDownloadedURLRequest(URLRequest request){
|
|
155 |
private void addDownloadedURLRequest(URLRequest request){
|
|
239 | 156 |
if (!downloadedFiles.contains(request)) { |
240 | 157 |
downloadedFiles.add(request); |
241 |
} else { |
|
242 |
System.out.println("NOT ADDED"); |
|
243 | 158 |
} |
244 |
|
|
245 |
|
|
246 |
// |
|
247 |
// String fileName = request.getFileName(); |
|
248 |
// if (fileName!=null){ |
|
249 |
// File f = new File(fileName); |
|
250 |
// if (f.exists()) |
|
251 |
// f.delete(); |
|
252 |
// } |
|
253 | 159 |
} |
254 | 160 |
|
255 | 161 |
} |
Also available in: Unified diff