Home | History | Annotate | Download | only in dbtool
      1 package com.mot.dm.dbtool;
      2 
      3 import java.util.*;
      4 
      5 public class Browser {
      6   public static int colsNum = 0; //number of columns in the comma sep file.
      7   public static ArrayList arrBrowserFromLines = new ArrayList();
      8   public static ArrayList arrBrowserLineHeaders = new ArrayList();
      9 
     10   public Value mcc = new Value();
     11   public Value mnc = new Value();
     12   public Value operator_name = new Value();
     13   public Value country_name = new Value();
     14   public Value ap_requires_auth = new Value();
     15   public Value ppp_auth_type = new Value();
     16   public Value ppp_auth_name = new Value();
     17   public Value ppp_auth_secret = new Value();
     18   public Value service_name = new Value();
     19   public Value nap_addr_type = new Value();
     20   public Value gprs_access_point_name = new Value();
     21   public Value dns_1 = new Value();
     22   public Value dns_2 = new Value();
     23   public Value bearer = new Value();
     24   public Value proxy = new Value();
     25   public Value proxy_addr_type = new Value();
     26   public Value port = new Value();
     27   public Value proxy_type = new Value();
     28   public Value proxy_requires_auth = new Value();
     29   public Value proxy_auth_name = new Value();
     30   public Value proxy_auth_secret = new Value();
     31   public Value proxy_auth_type = new Value();
     32   public Value account_type = new Value();
     33   public Value homepage_url = new Value();
     34  public String id_name = "";
     35 
     36   // Data validation
     37   public String validateData() {
     38     boolean isProxyEmpty = Validator.isValEmpty(proxy);
     39     StringBuffer err = new StringBuffer();
     40     err.append(Validator.validateMCC(mcc));
     41     err.append(Validator.validateMNC(mnc));
     42     err.append(Validator.validateStringValue(operator_name, true, -1,
     43                                              Const.OPERATOR_NAME_MAX_LENGTH,
     44                                              "operator_name"));
     45     err.append(Validator.validateApRequiresAuth(ap_requires_auth));
     46     err.append(Validator.validatePppAuthType(ppp_auth_type,
     47                                              ap_requires_auth.val));
     48     err.append(Validator.validatePppAuthName(ppp_auth_name,
     49                                              ap_requires_auth.val));
     50     err.append(Validator.validatePppAuthSecret(ppp_auth_secret,
     51                                                ap_requires_auth.val));
     52     err.append(Validator.validateStringValue(service_name, true, -1,
     53                                              Const.SERVICE_NAME_MAX_LENGTH,
     54                                              "service_name"));
     55     err.append(Validator.validateNAPAddrType(nap_addr_type));
     56     err.append(Validator.validateGprsAccessPoint(gprs_access_point_name,
     57                                                  nap_addr_type.val));
     58     err.append(Validator.validateDNS(dns_1));
     59     err.append(Validator.validateDNS(dns_2));
     60     err.append(Validator.validateBearer(bearer));
     61     err.append(Validator.validateProxy(proxy, proxy_addr_type.val));
     62     err.append(Validator.validateProxyAddrType(proxy_addr_type, isProxyEmpty));
     63     err.append(Validator.validatePort(port, isProxyEmpty));
     64     err.append(Validator.validateProxyType(proxy_type, isProxyEmpty));
     65     err.append(Validator.validateProxyRequiresAuth(proxy_requires_auth,
     66         isProxyEmpty));
     67     err.append(Validator.validateProxyAuthName(proxy_auth_name, isProxyEmpty,
     68                                                proxy_requires_auth.val));
     69     err.append(Validator.validateProxyAuthSecret(proxy_auth_secret,
     70                                                  isProxyEmpty,
     71                                                  proxy_requires_auth.val));
     72     err.append(Validator.validateProxyAuthType(proxy_auth_type, isProxyEmpty,
     73                                                proxy_requires_auth.val));
     74     err.append(Validator.validateAccountType(account_type));
     75 
     76     return err.toString();
     77   }
     78 
     79   public static void createXmlMessages() throws Exception {
     80     for (int i = 0; i < arrBrowserFromLines.size(); i++) {
     81       createXml((Browser) arrBrowserFromLines.get(i));
     82     }
     83   }
     84 
     85   public static void createXml(Browser browser) throws Exception {
     86     String xml;
     87     // String key = browser.mcc.val + ":" + browser.mnc.val + ":" + browser.operator_name.val +
     88     //    ":" + browser.account_type.val.toUpperCase();
     89     String key = Record.createKey(browser.mcc.val, browser.mnc.val,
     90                                   browser.operator_name.val,
     91                                   browser.account_type.val.toUpperCase());
     92 
     93     browser.id_name = Util.getIdNameFromRecords(browser.service_name.val, key);
     94     // APPLICATION
     95     xml = " <characteristic type=\"APPLICATION\">\n";
     96     xml += "  <parm name=\"APPID\"  value=\"w2\"/>\n";
     97     xml += "  <parm name=\"NAME\"  value=\"" + browser.id_name + "\"/>\n";
     98     if (browser.proxy.val.length() > 0) {
     99       xml += "  <parm name=\"TO-PROXY\"  value=\"PX_" + browser.id_name + "\"/>\n";
    100     }
    101     else {
    102       xml += "  <parm name=\"TO-NAPID\"  value=\"NAP_" + browser.id_name + "\"/>\n";
    103     }
    104     // RESOURCE
    105     xml += "  <characteristic type=\"RESOURCE\">\n";
    106     xml += "   <parm name=\"URI\"  value=\"" + browser.homepage_url.val +
    107         "\"/>\n";
    108     xml += "   <parm name=\"NAME\"  value=\"RES_" + browser.id_name + "\"/>\n";
    109     xml += "   <parm name=\"STARTPAGE\"  value=\"" + browser.homepage_url.val +
    110         "\"/>\n";
    111     xml += "  </characteristic>\n"; ///// RESOURCE
    112     xml += " </characteristic>\n\n"; ///// APPLICATION
    113 
    114     if (browser.proxy.val.length() > 0) {
    115       // PXLOGICAL
    116       xml += " <characteristic type=\"PXLOGICAL\">\n";
    117       xml += "  <parm name=\"PROXY-ID\"  value=\"PX_" + browser.id_name + "\"/>\n";
    118       xml += "  <parm name=\"NAME\"  value=\"" + browser.id_name + "\"/>\n";
    119       // PXPHYSICAL
    120       xml += "   <characteristic type=\"PXPHYSICAL\">\n";
    121       xml += "    <parm name=\"PHYSICAL-PROXY-ID\"  value=\"PXPH_" + browser.id_name +
    122           "\"/>\n";
    123       xml += "    <parm name=\"PXADDR\"  value=\"" + browser.proxy.val +
    124           "\"/>\n";
    125       xml += "    <parm name=\"PXADDRTYPE\"  value=\"" +
    126           browser.proxy_addr_type.val + "\"/>\n";
    127       xml += "    <parm name=\"TO-NAPID\"  value=\"NAP_" + browser.id_name + "\"/>\n";
    128       if (browser.port.val.length() > 0) {
    129         //PORT
    130         xml += "    <characteristic type=\"PORT\">\n";
    131         xml += "     <parm name=\"PORTNBR\"  value=\"" + browser.port.val +
    132             "\"/>\n";
    133         if (browser.proxy_type.val.length() > 0) {
    134           xml += "     <parm name=\"SERVICE\"  value=\"" +
    135               browser.proxy_type.val +
    136               "\"/>\n";
    137         }
    138         xml += "    </characteristic>\n"; /////PORT
    139       }
    140       xml += "   </characteristic>\n"; ///// PXPHYSICAL
    141       if (Util.strToBool(browser.proxy_requires_auth.val)) {
    142         // PXAUTHINFO
    143         xml += "   <characteristic type=\"PXAUTHINFO\">\n";
    144         xml += "    <parm name=\"PXAUTH-TYPE\"  value=\"" +
    145             browser.proxy_auth_type.val + "\"/>\n";
    146         xml += "    <parm name=\"PXAUTH-ID\"  value=\"" +
    147             browser.proxy_auth_name.val + "\"/>\n";
    148         xml += "    <parm name=\"PXAUTH-PW\"  value=\"" +
    149             browser.proxy_auth_secret.val + "\"/>\n";
    150         xml += "   </characteristic>\n"; ///// PXAUTHINFO
    151       }
    152       xml += " </characteristic>\n\n"; ///// PXLOGICAL
    153     }
    154     // NAPDEF
    155     xml += " <characteristic type=\"NAPDEF\">\n";
    156     xml += "  <parm name=\"NAPID\"  value=\"NAP_" + browser.id_name + "\"/>\n";
    157     xml += "  <parm name=\"NAME\"  value=\"" + browser.id_name + "\"/>\n";
    158     xml += "  <parm name=\"BEARER\"  value=\"" + browser.bearer.val + "\"/>\n";
    159     xml += "  <parm name=\"NAP-ADDRESS\"  value=\"" +
    160         browser.gprs_access_point_name.val + "\"/>\n";
    161     xml += "  <parm name=\"NAP-ADDRTYPE\"  value=\"" +
    162         browser.nap_addr_type.val + "\"/>\n";
    163     if (browser.dns_1.val.length() > 0) {
    164       xml += "  <parm name=\"DNS-ADDR\"  value=\"" + browser.dns_1.val +
    165           "\"/>\n";
    166     }
    167     if (browser.dns_2.val.length() > 0) {
    168       xml += "  <parm name=\"DNS-ADDR\"  value=\"" + browser.dns_2.val +
    169           "\"/>\n";
    170     }
    171     if (Util.strToBool(browser.ap_requires_auth.val)) {
    172       // NAPAUTHINFO
    173       xml += "   <characteristic type=\"NAPAUTHINFO\">\n";
    174       xml += "    <parm name=\"AUTHTYPE\"  value=\"" +
    175           browser.ppp_auth_type.val +
    176           "\"/>\n";
    177       xml += "    <parm name=\"AUTHNAME\"  value=\"" +
    178           browser.ppp_auth_name.val +
    179           "\"/>\n";
    180       xml += "    <parm name=\"AUTHSECRET\"  value=\"" +
    181           browser.ppp_auth_secret.val + "\"/>\n";
    182       xml += "   </characteristic>\n"; ///// NAPAUTHINFO
    183     }
    184     xml += " </characteristic>\n\n"; ///// NAPDEF
    185     Util.addXmlToRecord(xml, key, browser.id_name, "Browser");
    186   }
    187 }
    188