Ignore:
Timestamp:
2003-04-08T14:42:34+12:00 (21 years ago)
Author:
kjdon
Message:

more configure stuff

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/gsdl3/src/java/org/greenstone/gsdl3/action/SystemAction.java

    r4094 r4106  
    3535    page.appendChild(doc_.importNode(GSXML.getChildByTagName(message, GSXML.CONFIGURATION_ELEM), true));
    3636
     37    String coll = (String)params.get(GSCGI.COLLECTION_ARG);
    3738
    38     Element response = null;
     39    String to = "";
     40    if (coll!=null && !coll.equals("")) {
     41        to = coll;
     42    }
     43
     44    Element mr_request_message = doc_.createElement(GSXML.MESSAGE_ELEM);
     45    Element mr_request = GSXML.createBasicRequest(doc_, GSXML.REQUEST_TYPE_SYSTEM, to, lang);
     46    mr_request_message.appendChild(mr_request);
     47   
     48    Element system = doc_.createElement(GSXML.SYSTEM_ELEM);
     49    mr_request.appendChild(system);
     50   
     51    // will need to change the following if can do more than one system request at once
    3952    if (subaction.equals("c")) { // configure
    40         response =  processConfigure(page, params, lang);
    41     } else if (subaction.equals("d")) { // delete
    42         response = processDelete(page, params, lang);
    43     } else if (subaction.equals("a")) { // add
    44         response = processAdd(page, params, lang);
     53        system.setAttribute(GSXML.TYPE_ATT, GSXML.SYSTEM_TYPE_CONFIGURE);
     54        String info = (String)params.get(GSCGI.STATUS_SUBSET_ARG);
     55        system.setAttribute(GSXML.SYSTEM_SUBSET_ATT, info);
     56   
    4557    } else {
     58        String name = (String)params.get(GSCGI.STATUS_MODULE_NAME_ARG);
     59        String type = (String)params.get(GSCGI.STATUS_MODULE_TYPE_ARG);
     60
     61        system.setAttribute(GSXML.SYSTEM_MODULE_NAME_ATT, name);
     62        system.setAttribute(GSXML.SYSTEM_MODULE_TYPE_ATT, type);
     63       
     64        if (subaction.equals("d")) { // delete
     65        system.setAttribute(GSXML.TYPE_ATT, GSXML.SYSTEM_TYPE_DEACTIVATE);
     66
     67        } else if (subaction.equals("a")) { // add
     68        system.setAttribute(GSXML.TYPE_ATT, GSXML.SYSTEM_TYPE_ACTIVATE);
     69        } else {
    4670        // create the default response
    4771        // for now just have an error
    4872        System.err.println("SystemAction error: bad subaction type");
    4973        return null;
     74        }
    5075    }
    51     page.appendChild(response);
     76
     77    Element response_message = mr_.process(mr_request_message);
     78   
     79    page.appendChild(GSXML.duplicateWithNewName(doc_, (Element)GSXML.getChildByTagName(response_message, GSXML.RESPONSE_ELEM), GSXML.PAGE_RESPONSE_ELEM, true));
    5280   
    5381    // check that the stylesheet is present - cant output the page without one.
     
    6492    }
    6593
    66     /** processes a configure request */
    67     protected Element processConfigure(Element page, HashMap params,
    68                        String lang) {
    69    
    70     //System.out.println("params are:");
    71     //Misc.printHash(params);
    72     Element page_response = doc_.createElement(GSXML.PAGE_RESPONSE_ELEM);
    73    
    74     String info = (String)params.get(GSCGI.CONFIGURE_SUBSET_ARG);
    75     String coll = (String)params.get(GSCGI.COLLECTION_ARG);
    76 
    77     String to = "";
    78     if (coll!=null && !coll.equals("")) {
    79         to = coll;
    80     }
    81 
    82     Element request_message = doc_.createElement(GSXML.MESSAGE_ELEM);
    83     Element request = GSXML.createBasicRequest(doc_, GSXML.REQUEST_TYPE_SYSTEM, to, lang);
    84     request_message.appendChild(request);
    85    
    86     Element system = doc_.createElement(GSXML.SYSTEM_ELEM);
    87     system.setAttribute(GSXML.TYPE_ATT, GSXML.SYSTEM_TYPE_CONFIGURE);
    88     system.setAttribute(GSXML.SYSTEM_SUBSET_ATT, info);
    89     request.appendChild(system);
    90     Element response_message = mr_.process(request_message);
    91 
    92    
    93     return GSXML.duplicateWithNewName(doc_, (Element)GSXML.getChildByTagName(response_message, GSXML.RESPONSE_ELEM), GSXML.PAGE_RESPONSE_ELEM, true);
    94    
    95     }
    96     protected Element processDelete(Element page, HashMap params, String lang) {
    97 
    98     Element page_response = doc_.createElement(GSXML.PAGE_RESPONSE_ELEM);
    99     return page_response;
    100 
    101     }
    102     protected Element processAdd(Element page, HashMap params, String lang) {
    103 
    104     Element page_response = doc_.createElement(GSXML.PAGE_RESPONSE_ELEM);
    105     return page_response;
    106    
    107     }
    10894}
Note: See TracChangeset for help on using the changeset viewer.