KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > lib > cvsclient > response > ClearStaticDirectoryResponse


1 /*****************************************************************************
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14
15  * The Original Software is the CVS Client Library.
16  * The Initial Developer of the Original Software is Robert Greig.
17  * Portions created by Robert Greig are Copyright (C) 2000.
18  * All Rights Reserved.
19
20  * Contributor(s): Robert Greig.
21  *****************************************************************************/

22 package org.netbeans.lib.cvsclient.response;
23
24 import java.io.*;
25
26 import org.netbeans.lib.cvsclient.util.*;
27
28 /**
29  * Handles the Clear-static-directory response.
30  * @author Robert Greig
31  */

32 class ClearStaticDirectoryResponse implements Response {
33
34     /**
35      * Process the data for the response.
36      * @param dis the data inputstream allowing the client to read the server's
37      * response. Note that the actual response name has already been read
38      * and the input stream is positioned just before the first argument, if
39      * any.
40      */

41     public void process(LoggedDataInputStream dis, ResponseServices services)
42             throws ResponseException {
43         try {
44             final String JavaDoc localPath = dis.readLine();
45
46             final String JavaDoc repositoryPath = dis.readLine();
47             
48             final String JavaDoc absPath = services.convertPathname(localPath, repositoryPath);
49             if (services.getGlobalOptions().isExcluded(new File(absPath))) {
50                 return;
51             }
52             
53             //System.err.println("Repository path is: " + repositoryPath);
54
// It looks like it's not necessary to call updateAdminData(),
55
// because all it does is that it creates CVS/ folder with empty
56
// Entries if there is not one. This cause problems like issue #42267.
57
// However, the removal of this has caused issue #52296. Added back:
58
services.updateAdminData(localPath, repositoryPath, null);
59             File absFile = new File(absPath, "CVS/Entries.Static"); //NOI18N
60
if (absFile.exists()) {
61                 absFile.delete();
62             }
63         }
64         catch (IOException e) {
65             throw new ResponseException(e);
66         }
67     }
68
69     /**
70      * Is this a terminal response, i.e. should reading of responses stop
71      * after this response. This is true for responses such as OK or
72      * an error response
73      */

74     public boolean isTerminalResponse() {
75         return false;
76     }
77 }
78
Popular Tags