Example usage for com.google.gson GsonBuilder registerTypeAdapter

List of usage examples for com.google.gson GsonBuilder registerTypeAdapter

Introduction

In this page you can find the example usage for com.google.gson GsonBuilder registerTypeAdapter.

Prototype

@SuppressWarnings({ "unchecked", "rawtypes" })
public GsonBuilder registerTypeAdapter(Type type, Object typeAdapter) 

Source Link

Document

Configures Gson for custom serialization or deserialization.

Usage

From source file:com.popdeem.sdk.uikit.fragment.PDUIWalletFragment.java

License:Open Source License

private void refreshWallet() {
    //        deleteDirectoryTree(getActivity());
    Log.i("PDUIWalletFragment", "Refreshing Wallet");
    mSwipeRefreshLayout.post(new Runnable() {
        @Override//  w  ww .  j  av a 2 s .co  m
        public void run() {
            mSwipeRefreshLayout.setRefreshing(true);
        }
    });

    finishedWallet = false;
    finishedMessages = false;

    final PDRealmUserDetails userDetails = realm.where(PDRealmUserDetails.class).findFirst();
    if (userDetails == null) {
        Log.i("PDUIWalletFragment", "refreshWallet: user is Null, clearing list");
        mRewards.clear();
        mAdapter.notifyDataSetChanged();
        mSwipeRefreshLayout.setRefreshing(false);
        //            mNoItemsInWalletView.setVisibility(mRewards.size() == 0 ? View.VISIBLE : View.GONE);
        mSwipeRefreshLayout.post(new Runnable() {
            @Override
            public void run() {
                Log.i("PDUIWalletFragment", "Removing refresh");
                mSwipeRefreshLayout.setRefreshing(false);
            }
        });
    } else {
        Log.i("PDUIWalletFragment", "refreshWallet: user exists");
        //            PDAPIClient.instance().getRewardsInWallet(new PDAPICallback<ArrayList<PDReward>>() {

        PDAPIClient.instance().getUserDetailsForId(userDetails.getId(), new PDAPICallback<JsonObject>() {

            @Override
            public void success(JsonObject jsonObject) {
                if (jsonObject.get("status").getAsString().equalsIgnoreCase("User Data")) {
                    JsonObject user = jsonObject.getAsJsonObject("user");
                    float score = Float.valueOf(user.get("advocacy_score").getAsString());

                    realm.beginTransaction();
                    userDetails.setAdvocacyScore(score);
                    realm.commitTransaction();
                    mAdapter.notifyDataSetChanged();
                }

            }

            @Override
            public void failure(int statusCode, Exception e) {

            }
        });
        PDAPIClient.instance().getRewardsInWallet(new PDAPICallback<JsonObject>() {
            @Override
            public void success(JsonObject jsonObject) {
                JsonArray jsonArray = jsonObject.getAsJsonArray("rewards");
                ArrayList<PDReward> pdRewards = new ArrayList<PDReward>();
                GsonBuilder gsonBuilder = new GsonBuilder();
                gsonBuilder.registerTypeAdapter(PDReward.class, new PDRewardDeserializer());

                Gson gson = gsonBuilder.create();

                for (int i = 0; i < jsonArray.size(); i++) {
                    PDReward reward = gson.fromJson(jsonArray.get(i), PDReward.class);
                    pdRewards.add(reward);
                }

                // Sort rewards
                Collections.sort(pdRewards, new PDRewardComparator(PDRewardComparator.CLAIMED_AT_COMPARATOR));

                // If a reward has been revoked, remove it from the users wallet
                int verifyingRewardIndex = -1;
                for (Iterator<PDReward> iterator = pdRewards.iterator(); iterator.hasNext();) {
                    PDReward r = iterator.next();
                    if (r.getRevoked().equalsIgnoreCase("true")) {
                        iterator.remove();
                        continue;
                    }

                    //                        if (mAutoVerifyRewardId != null && r.getId().equalsIgnoreCase(mAutoVerifyRewardId) && !r.isInstagramVerified()) {
                    //                            r.setVerifying(true);
                    //                            verifyingRewardIndex = pdRewards.indexOf(r);
                    //                            mAutoVerifyRewardId = null;
                    //                        }
                }

                JsonArray jsonArrayTiers = jsonObject.getAsJsonArray("tiers");
                ArrayList<PDEvent> pdEvents = new ArrayList<PDEvent>();

                Gson gsonEvents = new Gson();

                for (int i = 0; i < jsonArrayTiers.size(); i++) {
                    PDEvent event = gsonEvents.fromJson(jsonArrayTiers.get(i), PDEvent.class);
                    pdEvents.add(event);
                }

                mRewards.clear();
                mRewards.addAll(pdEvents);
                mRewards.addAll(pdRewards);

                Collections.sort(mRewards, new Comparator<Object>() {
                    @Override
                    public int compare(Object o1, Object o2) {
                        long time1 = 0;
                        long time2 = 0;

                        if (o1 instanceof PDReward) {
                            PDReward reward = (PDReward) o1;
                            time1 = reward.getClaimedAt();
                        } else {
                            PDEvent reward = (PDEvent) o1;
                            time1 = reward.getDate();
                        }

                        if (o2 instanceof PDReward) {
                            PDReward reward = (PDReward) o2;
                            time2 = reward.getClaimedAt();
                        } else {
                            PDEvent reward = (PDEvent) o2;
                            time2 = reward.getDate();
                        }

                        if (time1 < time2)
                            return 1;
                        else if (time1 > time2)
                            return -1;

                        return 0;
                    }

                });

                mAdapter.notifyDataSetChanged();
                finishedWallet = true;
                if (finishedMessages && finishedWallet) {
                    mSwipeRefreshLayout.setRefreshing(false);
                }
                //                    mNoItemsInWalletView.setVisibility(mRewards.size() == 0 ? View.VISIBLE : View.GONE);

                //                    if (verifyingRewardIndex != -1) {
                //                        verifyReward(verifyingRewardIndex);
                //                    }else{
                //                        PDUIGratitudeDialog.showGratitudeDialog(getActivity(), "share");
                //                    }
            }

            @Override
            public void failure(int statusCode, Exception e) {
                finishedWallet = true;
                if (finishedMessages && finishedWallet) {
                    mSwipeRefreshLayout.setRefreshing(false);
                }
            }
        });
    }

    PDAPIClient.instance().getPopdeemMessages(new PDAPICallback<ArrayList<PDMessage>>() {
        @Override
        public void success(ArrayList<PDMessage> messages) {
            PDLog.d(PDUIInboxFragment.class, "message count: " + messages.size());
            ArrayList<PDMessage> mMessages = new ArrayList<>();
            mMessages.addAll(messages);
            int unread = 0;
            for (int i = 0; i < messages.size(); i++) {
                if (!messages.get(i).isRead()) {
                    unread++;
                }
            }
            setBadges(unread);

            finishedMessages = true;
            if (finishedMessages && finishedWallet) {
                mSwipeRefreshLayout.setRefreshing(false);
            }
        }

        @Override
        public void failure(int statusCode, Exception e) {
            finishedMessages = true;
            if (finishedMessages && finishedWallet) {
                mSwipeRefreshLayout.setRefreshing(false);
            }
        }
    });
}

From source file:com.prowidesoftware.swift.model.BbanStructureValidations.java

License:Open Source License

private BbanStructureValidations() {
    GsonBuilder gsonBuilder = new GsonBuilder();
    gsonBuilder.registerTypeAdapter(BbanEntryType.class, new BbanEntryTypeDeserializer());
    Gson gson = gsonBuilder.create();/*from   w  ww. j av a2 s  .c o m*/
    String reader = null;
    try {
        reader = Lib.readResource(JSON_FILE, null);
    } catch (IOException e) {
        log.log(Level.SEVERE, "Cannot load " + JSON_FILE
                + " from classpath, the BBAN structure validations will be initialized empty", e);
    }
    if (reader != null) {
        this.bbanStructures = gson.fromJson(reader, REVIEW_TYPE);
    }
}

From source file:com.quchwe.cms.data.remote.RemoteSource.java

private RemoteSource(Context context) {
    this.mContext = context;
    mLocalSource = LocalSource.instance(context);
    GsonBuilder builder = new GsonBuilder();
    builder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() {
        public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                throws JsonParseException {
            return new Date(json.getAsJsonPrimitive().getAsLong());
        }//  w  ww  .ja  v a2  s.  c o m
    });

    gson = builder.create();

}

From source file:com.quix.aia.cn.imo.mapper.UserMaintenance.java

License:Open Source License

/**
 * <p>This method checks USer id and Password and  sets values to bean  and 
 * also set last time login Date & Time</p>
 * @param User user object//from w  w w  .jav  a 2  s.c o m
 * @param requestParameters Servlet Request Parameter
 * @return User object
 */

//   public User authenticateUser(String userID, String password) {
//      log.log(Level.INFO,"UserMaintenance --> authenticateUser ");
//      
//       ArrayList<User> list = new ArrayList();
//       User user=null;  
//       Query query=null;
//       Session session = null;
//      Transaction tx;
//       try{ 
//         
//             session = HibernateFactory.openSession();
//            tx= session.beginTransaction();
//            String psw=PasswordHashing.EncryptBySHA2(password);
//            query = session.createQuery(" from User where status = 1 and staffLoginId=:LoginId and password=:psw    ");
//            query.setParameter("LoginId",userID.toUpperCase());
//            query.setParameter("psw",psw );
//            
//            list=(ArrayList<User>) query.list();
//            
//            if(list.size()==0){
//               query = session.createQuery(" from User where status = 1 and staffLoginId=:LoginId   ");
//               query.setParameter("LoginId",userID.toUpperCase());
//               list=(ArrayList<User>) query.list();
//               User tempUser=new User();
//               if(list.size()!=0){
//                  tempUser=list.get(0);
//                  query = session.createQuery("UPDATE User SET faildLogin=:failLogin where status = 1 and user_no=:userno  ");
//                  query.setParameter("failLogin", new Date());
//                  query.setParameter("userno", tempUser.getUser_no());
//                  query.executeUpdate();
//                  tx.commit();
//                  
//               }
//               
//               return user;
//            }else{
//               user = new User();
//               user = list.get(0);
//               
//               if(user.getSscCode() > 0)
//                  user.setSscLevel(true);
//               else if(user.getCityCode() > 0)
//                  user.setCityLevel(true);
//               else if(user.getBranchCode() > 0)
//                  user.setBranchLevel(true);
//               else if(user.getDistrict() > 0)
//                  user.setDistrictLevel(true);
//               else if(user.getBuCode() > 0)
//                  user.setBuLevel(true);
//            }
//            
//            query = session.createQuery("UPDATE User SET lastLogIn=:lastLogin where status = 1 and user_no=:userno  ");
//            query.setParameter("lastLogin", new Date());
//            query.setParameter("userno", user.getUser_no());
//            query.executeUpdate();
//            tx.commit();
//            
//            
//          log.log(Level.INFO,"authenticateUser Successfully ................. ");
//       }   
//         catch(Exception e)
//         {
//            log.log(Level.INFO,"authenticateUser Failed ................. ");
//            e.printStackTrace();
//            
//         }finally{
//            try{
//               HibernateFactory.close(session);
//            }catch(Exception e){
//               
//               e.printStackTrace();
//            }
//      
//         }
//      return user;
//   }

public User authenticateUser(String userID, String password, String branch, ServletContext context) {
    log.log(Level.INFO, "UserMaintenance --> authenticateUser ");

    ArrayList<User> list = new ArrayList();
    User user = null;
    Query query = null;
    Session session = null;
    Transaction tx;
    UserRest userRest = null;
    UserAuthResponds userAuth = new UserAuthResponds();
    if ("admin".equalsIgnoreCase(userID) && "P@ssword1".equals(password)) {
        user = new User();
        user.setBranchCode(0);
        user.setBranchLevel(false);
        user.setBuCode(0);
        user.setStaffName("Admin");
        user.setBuLevel(true);
        // user.setChannelCode("2|3|");
        user.setCityCode("0");
        user.setCityLevel(false);
        user.setContactNo("0000000000");
        user.setDepartment(0);
        user.setDistrict(0);
        user.setDistrictLevel(false);
        user.setEmail("admin@email.com");
        user.setPassword(password);
        user.setSscCode("0");
        user.setSscLevel(false);
        user.setOfficeCode("0");
        user.setOfficeLevel(false);
        user.setBranchCode(0);
        user.setBranchLevel(false);
        user.setStaffLoginId("Admin");
        user.setStatus(true);
        user.setStatusPsw(true);
        user.setUser_no(0);
        user.setUserType("AD");
        user.setCho(true);
        log.log(Level.INFO, "authenticateUser Successfully ................. ");
    } else {
        GsonBuilder builder = new GsonBuilder();
        HttpClient httpClient = new DefaultHttpClient();
        try {

            String co = "";
            //                  userID="NSNP306";
            //                  password="A111111A";
            AamData aamData = new AamData();
            co = branch;
            //                  co="0986";
            Map<String, String> map = (Map<String, String>) context
                    .getAttribute(ApplicationAttribute.CONFIGURATION_PROPERTIES_MAP);
            //                  String userAuthUrl  = ResourceBundle.getBundle("configurations").getString("userAuthUrl");
            //                  String userAuthUrl = map.get("userAuthUrl");
            String userAuthUrlFinal = "";
            //                  String userAuthEnvironment = map.get("userAuthEnvironment");
            //                  String userAuthEnvironment = context.getInitParameter("userAuthEnvironment");
            Context envEntryContext = (Context) new InitialContext().lookup("java:comp/env");
            String userAuthEnvironment = (String) envEntryContext.lookup("userAuthEnvironment");
            if ("internet".equalsIgnoreCase(userAuthEnvironment)) {
                userAuthUrlFinal = map.get("userAuthUrlInternet") + "&co=" + co + "&account=" + userID
                        + "&password=" + password;

            } else {
                userAuthUrlFinal = map.get("userAuthUrl") + "&co=" + co + "&account=" + userID + "&password="
                        + password;
            }
            log.log(Level.INFO,
                    "UserAuthUrl : " + userAuthUrlFinal + " :- userAuthEnvironment : " + userAuthEnvironment,
                    "");
            HttpGet getRequest = new HttpGet(userAuthUrlFinal);
            getRequest.addHeader("accept", "application/json");
            HttpResponse response = httpClient.execute(getRequest);

            if (response.getStatusLine().getStatusCode() != 200) {
                throw new RuntimeException(
                        "Failed : HTTP error code : " + response.getStatusLine().getStatusCode());
            }

            BufferedReader br = new BufferedReader(new InputStreamReader((response.getEntity().getContent())));

            String output;
            log.log(Level.INFO, "UserMaintenance --> Output from Server ....  ");
            // System.out.println("Output from Server .... \n");
            if ((output = br.readLine()) != null) {
                //System.out.println(output);
                Gson googleJson = new Gson();
                userAuth = googleJson.fromJson(output, UserAuthResponds.class);
                System.out.println("Success " + userAuth.getSuccess());
                if (userAuth.getSuccess().equals("1")) {

                    String content = userAuth.getContent();

                    content = AESPasswordManager.getInstance().decryptPassword(content);

                    builder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() {
                        @Override
                        public Date deserialize(JsonElement json, Type typeOfT,
                                JsonDeserializationContext context) throws JsonParseException {
                            return LMSUtil.convertDateToyyyy_mm_dd(json.getAsString());
                        }
                    });

                    googleJson = builder.create();

                    //                       content="{\"BRANCH\":\"0986\",\"CITY\":NULL,\"SSC\":NULL,\"USERTYPE\":NULL,\"USERID\":\"000015710\",\"USERNAME\":\"                        \",\"USERSTATUS\":\"A\",\"TEAMCODE\":\"G00000060\",\"TEAMNAME\":\"                        \",\"OFFICECODE\":\"YA01\",\"OFFICENAME\":\"                      \",\"CERTIID\":\"310110198008080808  \",\"DATEOFBIRTH\":\"1980-08-08\",\"GENDER\":\"F \",\"CONTRACTEDDATE\":\"2002-10-01 12:00:00.0\",\"TITLE\":\"L3\",\"DTLEADER\":NULL}";

                    userRest = googleJson.fromJson(content, UserRest.class);

                    if ("STAFF".equalsIgnoreCase(userRest.getUSERTYPE())) {
                        //                     
                        //                     aamData = AamDataMaintenance.retrieveDataToModel(userID);
                        //                     
                        //                     
                        //                     user = new User();
                        //                     if(aamData.getBranchCode()==null){
                        //                        user.setBranchCode(0);
                        //                     }else{
                        //                        user.setBranchCode(aamData.getBranchCode());
                        //                     }
                        //                     
                        //                     if(aamData.getOfficeCode()==null){
                        //                        user.setOfficeCode(0);
                        //                     }else{
                        //                        user.setOfficeCode(Integer.parseInt(aamData.getOfficeCode()));
                        //                     }
                        //                     
                        //                     if(aamData.getDistrictCode()==null){
                        //                        user.setDistrict(0);
                        //                     }else{
                        //                        user.setDistrict(aamData.getDistrictCode());
                        //                     }
                        //                     
                        //                     if(aamData.getCityCode()==null){
                        //                        user.setCityCode(0);
                        //                     }else{
                        //                        user.setCityCode(aamData.getCityCode());
                        //                     }
                        //                     
                        //                     if(aamData.getBuCode()==null){
                        //                        user.setBuCode(0);
                        //                     }else{
                        //                        user.setBuCode(aamData.getBuCode());
                        //                     }
                        //                     if(aamData.getSscCode()==null){
                        //                        user.setSscCode(0);
                        //                     }else{
                        //                        user.setSscCode(aamData.getSscCode());
                        //                     }
                        //                     
                        //                     user.setStaffLoginId(aamData.getAgentCode());
                        //                  
                        //                     user.setUserType(userRest.getUSERTYPE());
                        //                     if(userRest.getUSERSTATUS()!=null){
                        //                        if(userRest.getUSERSTATUS().equalsIgnoreCase("A")){
                        //                           user.setStatus(true);
                        //                        }else{
                        //                           user.setStatus(false);
                        //                        }
                        //                     }else{
                        //                        user.setStatus(false);
                        //                     }
                        //                     
                        //                     if(aamData.getAgentName()==null){
                        //                        user.setStaffName("");
                        //                     }else{
                        //                        user.setStaffName(aamData.getAgentName());
                        //                     }
                        //                     
                        //                     if(user.getOfficeCode() > 0)
                        //                        user.setOfficeLevel(true);
                        //                     if(user.getSscCode() > 0)
                        //                        user.setSscLevel(true);
                        //                     
                        //                     else if(user.getCityCode() > 0)
                        //                        user.setCityLevel(true);
                        //                     else if(user.getBranchCode() > 0)
                        //                        user.setBranchLevel(true);
                        //                     else if(user.getDistrict() > 0)
                        //                        user.setDistrictLevel(true);
                        //                     else if(user.getBuCode() > 0)
                        //                        user.setBuLevel(true);

                        session = HibernateFactory.openSession();
                        tx = session.beginTransaction();
                        //String psw=PasswordHashing.EncryptBySHA2(password);
                        query = session.createQuery(" from User where status = 1 and staffLoginId=:LoginId ");
                        query.setParameter("LoginId", userID.toUpperCase());
                        //query.setParameter("psw",psw );

                        list = (ArrayList<User>) query.list();

                        if (list.size() == 0) {
                            //                           query = session.createQuery(" from User where status = 1 and staffLoginId=:LoginId   ");
                            //                           query.setParameter("LoginId",userID.toUpperCase());
                            //                           list=(ArrayList<User>) query.list();
                            //                           User tempUser=new User();
                            //                           if(list.size()!=0){
                            //                              tempUser=list.get(0);
                            //                              query = session.createQuery("UPDATE User SET faildLogin=:failLogin where status = 1 and user_no=:userno  ");
                            //                              query.setParameter("failLogin", new Date());
                            //                              query.setParameter("userno", tempUser.getUser_no());
                            //                              query.executeUpdate();
                            //                              tx.commit();
                            //                              
                            //                           }
                            //                           
                            return user;
                        } else {
                            user = new User();
                            user = list.get(0);

                            if (!user.getOfficeCode().trim().equals("0"))
                                user.setOfficeLevel(true);
                            else if (!user.getSscCode().trim().equals("0"))
                                user.setSscLevel(true);
                            else if (!user.getCityCode().trim().equals("0"))
                                user.setCityLevel(true);
                            else if (user.getBranchCode() > 0)
                                user.setBranchLevel(true);
                            else if (user.getDistrict() > 0)
                                user.setDistrictLevel(true);
                            else if (user.getBuCode() > 0)
                                user.setBuLevel(true);
                        }

                        query = session.createQuery(
                                "UPDATE User SET lastLogIn=:lastLogin where status = 1 and user_no=:userno  ");
                        query.setParameter("lastLogin", new Date());
                        query.setParameter("userno", user.getUser_no());
                        query.executeUpdate();
                        tx.commit();

                        log.log(Level.INFO, "authenticateUser Successfully ................. ");

                    } else {
                        log.log(Level.INFO, "Login Failed............");
                    }

                } else {
                    log.log(Level.INFO, "Login Failed............");

                }

            }

        } catch (Exception e) {
            log.log(Level.SEVERE, e.getMessage());
            e.printStackTrace();
            LogsMaintenance logsMain = new LogsMaintenance();
            StringWriter errors = new StringWriter();
            e.printStackTrace(new PrintWriter(errors));
            logsMain.insertLogs("UserMaintenance", Level.SEVERE + "", errors.toString());
        } finally {
            httpClient.getConnectionManager().shutdown();
            HibernateFactory.close(session);
        }
    }
    return user;
}

From source file:com.quix.aia.cn.imo.rest.AddressBookRest.java

License:Open Source License

/**
 * <p>//  ww w.  ja  v a2s.c  o  m
 * Address Book Synchronization rest service post method which gets Json
 * string, which contains list of Address Book records. This method performs
 * save or update operations. It returns Json string with local address code
 * with IOS address code.
 * </p>
 * 
 * @param jsonAddressBookListString
 * 
 */
@POST
@Path("/sync")
@Consumes(MediaType.TEXT_PLAIN)
@Produces({ MediaType.APPLICATION_JSON })
public Response syncAddressBook(String jsonAddressBookListString) {
    log.log(Level.INFO, "Address Book --> Sync Record ");
    log.log(Level.INFO,
            "Address Book --> Sync Record --> Data for Sync...  ::::: " + jsonAddressBookListString);

    MsgBeans beans = new MsgBeans();
    AuditTrailMaintenance auditTrailMaint = new AuditTrailMaintenance();
    List<AddressBook> jsonObjList = new ArrayList();
    GsonBuilder builder = new GsonBuilder();
    AddressBookMaintenance addressBookMaintenance = new AddressBookMaintenance();
    Gson googleJson = null;
    Type listType = null;
    String returnJsonString = "";
    try {
        returnJsonString = "[";

        builder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() {
            @Override
            public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                    throws JsonParseException {
                Date date = LMSUtil.convertDateToyyyymmddhhmmssDashed(json.getAsString());
                if (null != date) {
                    return date;
                } else {
                    return LMSUtil.convertDateToyyyy_mm_dd(json.getAsString());
                }
            }
        });

        builder.registerTypeHierarchyAdapter(byte[].class, new JsonDeserializer<byte[]>() {
            public byte[] deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                    throws JsonParseException {
                return Base64.decodeBase64(json.getAsString());
            }
        });

        googleJson = builder.create();
        listType = new TypeToken<List<AddressBook>>() {
        }.getType();
        jsonObjList = googleJson.fromJson(jsonAddressBookListString, listType);

        // maintain in single transaction
        returnJsonString += addressBookMaintenance.insertOrUpdateRestBatch(jsonObjList);
        returnJsonString += "]";

        log.log(Level.INFO, "Address Book --> saved successfully ");
        auditTrailMaint.insertAuditTrail(
                new AuditTrail("Rest", AuditTrail.MODULE_ADDRESS_BOOK, AuditTrail.FUNCTION_SUCCESS, "SUCCESS"));
        return Response.status(200).entity(returnJsonString).build();

    } catch (Exception e) {

        beans.setCode("500");
        beans.setMassage(
                "Something wrong happens, please contact administrator. Error Message : " + e.getMessage());
        auditTrailMaint.insertAuditTrail(
                new AuditTrail("Rest", AuditTrail.MODULE_ADDRESS_BOOK, AuditTrail.FUNCTION_FAIL, "FAILED"));

        log.log(Level.SEVERE, "Address Book --> Error in Save Record.");
        log.log(Level.SEVERE, e.getMessage());
        e.printStackTrace();
        StringWriter errors = new StringWriter();
        e.printStackTrace(new PrintWriter(errors));
        LogsMaintenance logsMain = new LogsMaintenance();
        logsMain.insertLogs("AddressBookRest", Level.SEVERE + "", errors.toString());

        return Response.status(200).entity(googleJson.toJson(beans)).build();
    } finally {
        jsonObjList.clear();
        auditTrailMaint = null;
        addressBookMaintenance = null;
        builder = null;
        googleJson = null;
        listType = null;
        returnJsonString = null;
        beans = null;
        System.gc();
    }
}

From source file:com.quix.aia.cn.imo.rest.AddressBookRest.java

License:Open Source License

/**
 * <p>//ww  w. jav  a  2 s .  co m
 * This method inserts Candidate Note record.
 * </p>
 */
//[{"addressCode":172926,"iosAddressCode":"38","activityType":"Participation","activityDate":"2015-06-06 08:00:00","description":"description","activityStatus":true}]
@POST
@Path("/syncNotes")
@Consumes(MediaType.TEXT_PLAIN)
@Produces({ MediaType.APPLICATION_JSON })
public Response syncNotes(@Context HttpServletRequest request, @Context ServletContext context,
        String jsonString) {
    log.log(Level.INFO, "Address Book --> syncNotes ");
    log.log(Level.INFO, "Address Book --> syncNotes --> Data for Sync Notes...  ::::: " + jsonString);
    String responseString = "[{\"status\":";
    MsgBeans beans = new MsgBeans();
    AuditTrailMaintenance auditTrailMaint = new AuditTrailMaintenance();
    Gson googleJson = null;
    GsonBuilder builder = new GsonBuilder();
    //        CandidateNoteId candidateNoteId = new CandidateNoteId();
    CandidateNote candidateNote = null;

    CandidateNoteMaintenance candidateNoteMaint = new CandidateNoteMaintenance();
    try {
        log.log(Level.INFO, "Address Book --> Saving Candidate Notes ... ");

        builder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() {
            @Override
            public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                    throws JsonParseException {
                Date date = LMSUtil.convertDateToyyyymmddhhmmssDashed(json.getAsString());
                if (null != date) {
                    return date;
                } else {
                    return LMSUtil.convertDateToyyyy_mm_dd(json.getAsString());
                }
            }
        });

        googleJson = builder.create();
        Type listType = new TypeToken<List<CandidateNote>>() {
        }.getType();
        List<CandidateNote> jsonObjList = googleJson.fromJson(jsonString, listType);
        //           candidateNote = jsonObjList.get(0);  
        //           candidateNoteId.setAddressCode(candidateNote.getAddressCode());
        //           candidateNoteId.setIosNoteCode(candidateNote.getIosNoteCode());
        //           candidateNote.setNoteId(candidateNoteId);

        candidateNoteMaint.syncNotes(jsonObjList, request);

        //           String msg = candidateNoteMaint.createNewCandidateNote(candidateNote,request);

        log.log(Level.INFO, "Address Book --> Candidate Notes Saved successfully... ");
        responseString += true;
    } catch (Exception e) {
        e.printStackTrace();
        beans.setCode("500");
        beans.setMassage(
                "Something wrong happens, please contact administrator. Error Message : " + e.getMessage());
        auditTrailMaint.insertAuditTrail(
                new AuditTrail("Rest", AuditTrail.MODULE_ADDRESS_BOOK, AuditTrail.FUNCTION_FAIL, "FAILED"));

        log.log(Level.SEVERE, "Address Book --> Error in Saving Candidate Notes.");
        log.log(Level.SEVERE, e.getMessage());
        e.printStackTrace();
        StringWriter errors = new StringWriter();
        e.printStackTrace(new PrintWriter(errors));
        LogsMaintenance logsMain = new LogsMaintenance();
        logsMain.insertLogs("AddressBookRest", Level.SEVERE + "", errors.toString());

        responseString += false;
    } finally {
        builder = null;
        googleJson = null;
        //         candidateNoteId=null;
        auditTrailMaint = null;
        candidateNoteMaint = null;
        candidateNote = null;
        beans = null;
        System.gc();
    }

    responseString += "}]";
    return Response.status(200).entity(responseString).build();
}

From source file:com.quix.aia.cn.imo.rest.AddressBookRest.java

License:Open Source License

/**
 * <p>//from   ww  w.  j  av  a2  s  .com
 * This method Push Contract Details
 * </p>
 */
//[{"branchCode":"12345","candidateAgentCode":"1255210","candidateNric":"nric2","recruiterAgentCode":"125521","recruitmentType":"recruitmentType","contractDate":"2015-06-06 08:00:00"}]
@POST
@Path("/pushContractedDetails")
@Consumes({ MediaType.TEXT_PLAIN })
@Produces({ MediaType.APPLICATION_JSON })
public Response pushContractedAamData(@Context HttpServletRequest request, @Context ServletContext context,
        String jsonString) {

    log.log(Level.INFO, "Address Book --> pushContractedDetails ... ");
    log.log(Level.INFO, "Address Book --> pushContractedDetails --> Data...  ::::: " + jsonString);
    ContractDetail contractDetail;
    AddressBook addressBook;
    Gson googleJson = null;
    String responseString = "[{\"status\":";
    MsgBeans beans = new MsgBeans();
    AddressBookMaintenance addressBookMaintenance = new AddressBookMaintenance();
    AuditTrailMaintenance auditTrailMaint = new AuditTrailMaintenance();
    try {
        GsonBuilder builder = new GsonBuilder();
        builder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() {
            @Override
            public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                    throws JsonParseException {
                Date date = LMSUtil.convertDateToyyyymmddhhmmssDashed(json.getAsString());
                if (null != date) {
                    return date;
                } else {
                    return LMSUtil.convertDateToyyyy_mm_dd(json.getAsString());
                }
            }
        });

        googleJson = builder.create();
        Type listType = new TypeToken<List<ContractDetail>>() {
        }.getType();
        List<ContractDetail> jsonObjList = googleJson.fromJson(jsonString, listType);
        if (!jsonObjList.isEmpty()) {
            contractDetail = jsonObjList.get(0);
            addressBook = new AddressBook();

            addressBook = addressBookMaintenance.getAddressBookNric(contractDetail.getCandidateNric(),
                    contractDetail.getRecruiterAgentCode());

            addressBook.setCandidateAgentCode(contractDetail.getCandidateAgentCode());
            addressBook.setBranchCode(contractDetail.getBranchCode());
            addressBook.setContractDate(contractDetail.getContractDate());
            addressBook.setRecruitmentType(contractDetail.getRecruitmentType());
            addressBook.setNric(contractDetail.getCandidateNric());
            addressBook.setAgentId(contractDetail.getRecruiterAgentCode());
            addressBook.setRecruitmentProgressStatus("9/9");

            addressBookMaintenance.updateAddressBook(addressBook);
        }
        auditTrailMaint.insertAuditTrail(
                new AuditTrail("Rest", AuditTrail.MODULE_EOP, AuditTrail.FUNCTION_REST, "SUCCESS"));
        responseString += true;
    } catch (Exception e) {
        log.log(Level.INFO, "EventRest --> candidateRegister --> Exception..... ");
        auditTrailMaint.insertAuditTrail(
                new AuditTrail("Rest", AuditTrail.MODULE_EOP, AuditTrail.FUNCTION_FAIL, "FAILED"));
        beans.setCode("500");
        beans.setMassage("Database Error");
        responseString += false;

        log.log(Level.SEVERE, e.getMessage());
        e.printStackTrace();
        StringWriter errors = new StringWriter();
        e.printStackTrace(new PrintWriter(errors));
        LogsMaintenance logsMain = new LogsMaintenance();
        logsMain.insertLogs("AddressBookRest", Level.SEVERE + "", errors.toString());
    }

    responseString += "}]";
    return Response.status(200).entity(responseString).build();
}

From source file:com.quix.aia.cn.imo.rest.EventRest.java

License:Open Source License

@POST
@Path("/candidateAttend")
@Consumes(MediaType.TEXT_PLAIN)/*from   w  ww. j ava 2s  . c o  m*/
@Produces({ MediaType.APPLICATION_JSON })
public Response candidateAttend(@Context HttpServletRequest request, @Context ServletContext context,
        String jsonString) {
    log.log(Level.INFO, "EventRest --> candidateAttend");
    log.log(Level.INFO, "EventRest --> candidateAttend --> Data ...  ::::: " + jsonString);
    boolean status = false;
    MsgBeans beans = new MsgBeans();
    String agentId = request.getParameter("agentId");
    AuditTrailMaintenance auditTrailMaint = new AuditTrailMaintenance();
    EventCandidate candidate = null;
    try {

        EopAttendanceMaintenance objMaintenance = new EopAttendanceMaintenance();
        GsonBuilder builder = new GsonBuilder();
        builder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() {
            @Override
            public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                    throws JsonParseException {
                Date date = LMSUtil.convertoDateHHMMSSAMPM1(json.getAsString());
                if (null != date) {
                    return date;
                } else {
                    return LMSUtil.convertDateToyyyy_mm_dd(json.getAsString());
                }
            }
        });

        Gson googleJson = builder.create();
        Type listType = new TypeToken<List<EventCandidate>>() {
        }.getType();
        List<EventCandidate> jsonObjList = googleJson.fromJson(jsonString, listType);

        for (Iterator<EventCandidate> itr = jsonObjList.iterator(); itr.hasNext();) {
            candidate = (EventCandidate) itr.next();
            objMaintenance.candidateAttendanceRest(candidate);
        }

        status = true;
        auditTrailMaint.insertAuditTrail(
                new AuditTrail("Rest", AuditTrail.MODULE_EOP, AuditTrail.FUNCTION_REST, "SUCCESS"));
    } catch (Exception e) {
        log.log(Level.INFO, "EventRest --> candidateAttend --> Exception..... ");
        log.log(Level.SEVERE, e.getMessage());
        e.printStackTrace();
        StringWriter errors = new StringWriter();
        e.printStackTrace(new PrintWriter(errors));
        LogsMaintenance logsMain = new LogsMaintenance();
        logsMain.insertLogs("EventRest", Level.SEVERE + "", errors.toString());

        auditTrailMaint.insertAuditTrail(
                new AuditTrail("Rest", AuditTrail.MODULE_EOP, AuditTrail.FUNCTION_FAIL, "FAILED"));
        beans.setCode("500");
        beans.setMassage("Database Error");
    }

    return Response.status(200).entity("[{\"status\":" + status + "}]").build();
}

From source file:com.quix.aia.cn.imo.rest.EventRest.java

License:Open Source License

@POST
@Path("/candidateRegister")
@Consumes(MediaType.TEXT_PLAIN)//w  ww  . j  a  va  2  s  .c  om
@Produces({ MediaType.APPLICATION_JSON })
public Response candidateRegister(@Context HttpServletRequest request, @Context ServletContext context,
        String jsonString) {
    log.log(Level.INFO, "EventRest --> candidateRegister");
    log.log(Level.INFO, "EventRest --> candidateRegister --> Data ...  ::::: " + jsonString);
    boolean status = false;
    boolean isDuplicate = false;
    Integer registeredCount = 0;
    MsgBeans beans = new MsgBeans();
    String agentId = request.getParameter("agentId");
    String coBranch = request.getParameter("co");
    AuditTrailMaintenance auditTrailMaint = new AuditTrailMaintenance();
    try {
        AamData aamData = AamDataMaintenance.retrieveDataToModel(agentId, coBranch);
        EopAttendanceMaintenance objMaintenance = new EopAttendanceMaintenance();
        GsonBuilder builder = new GsonBuilder();
        builder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() {
            @Override
            public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                    throws JsonParseException {
                Date date = LMSUtil.convertDateToyyyymmddhhmmssDashed(json.getAsString());
                if (null != date) {
                    return date;
                } else {
                    return LMSUtil.convertDateToyyyy_mm_dd(json.getAsString());
                }
            }
        });

        Gson googleJson = builder.create();
        Type listType = new TypeToken<List<EventCandidate>>() {
        }.getType();
        List<EventCandidate> jsonObjList = googleJson.fromJson(jsonString, listType);
        EventCandidate candidate = jsonObjList.get(0);
        candidate.setAgentName(aamData.getAgentName());
        candidate.setBuName(aamData.getBu());
        candidate.setDistName(aamData.getDistrict());
        candidate.setCityName(aamData.getCity());
        candidate.setSscName(aamData.getSsc());
        candidate.setBranchName(aamData.getBranch());
        candidate.setOfficeName(aamData.getOfficeName());
        candidate.setAgencyLeaderCode(aamData.getLeaderCode());
        candidate.setEventCandidateCode("" + candidate.getCandidateCode());

        if (candidate.getStatusStr() != null && candidate.getStatusStr().equalsIgnoreCase("true"))
            candidate.setStatus(true);
        else
            candidate.setStatus(false);

        //           candidate.setAgencyLeaderName(aamData.getTeamName());

        List<EventCandidate> list1 = objMaintenance.getAttendanceList(request, candidate.getEventCode());
        registeredCount = list1.size();

        if (!objMaintenance.checkDuplicateCandiadteReg("" + candidate.getEventCode(),
                candidate.getServicingAgent(), candidate.getEventCandidateCode())) {
            status = true;
            objMaintenance.createNewCandidateRest(candidate, request, aamData);
            registeredCount++;
            AddressBookMaintenance addrBookMain = new AddressBookMaintenance();
            String emailAddrs = addrBookMain
                    .getEmailAddress(Integer.parseInt(candidate.getEventCandidateCode()));

            if (emailAddrs != null && emailAddrs.length() > 0) {
                EmailNotification.sendEopRegEmailNotification(candidate, emailAddrs, aamData);
            }
            String conditionFieldName[] = { "addressCode" };
            String conditionFieldValue[] = { candidate.getEventCandidateCode() };
            new AddressBookMaintenance().updateAddressBookStatus("1/9", conditionFieldName,
                    conditionFieldValue);

            auditTrailMaint.insertAuditTrail(
                    new AuditTrail("Rest", AuditTrail.MODULE_EOP, AuditTrail.FUNCTION_REST, "SUCCESS"));
        } else {
            auditTrailMaint.insertAuditTrail(
                    new AuditTrail("Rest", AuditTrail.MODULE_EOP, AuditTrail.FUNCTION_REST, "FAIL"));
            isDuplicate = true;
        }

    } catch (Exception e) {
        log.log(Level.INFO, "EventRest --> candidateRegister --> Exception..... ");
        log.log(Level.SEVERE, e.getMessage());
        e.printStackTrace();
        StringWriter errors = new StringWriter();
        e.printStackTrace(new PrintWriter(errors));
        LogsMaintenance logsMain = new LogsMaintenance();
        logsMain.insertLogs("EventRest", Level.SEVERE + "", errors.toString());

        auditTrailMaint.insertAuditTrail(
                new AuditTrail("Rest", AuditTrail.MODULE_EOP, AuditTrail.FUNCTION_FAIL, "FAILED"));
        beans.setCode("500");
        beans.setMassage("Database Error");
    }

    return Response.status(200).entity("[{\"status\":" + status + ",\"isDuplicate\":" + isDuplicate
            + ",\"registeredCount\":" + registeredCount + "}]").build();
}

From source file:com.quix.aia.cn.imo.rest.FirstInterviewRest.java

License:Open Source License

/**
 * <p>//from  w w  w.  jav a2 s . c  o m
 * This method inserts Candidate First Interview Detail record.
 * </p>
 */
//[{"agentId":"172926","candidateCode":"38","interviewResult":"PASS","recruitmentPlan":"ABC","remarks":"description","passTime":"2015-06-06 08:00:00"}]
@POST
@Path("/pushFirstInterview")
@Consumes(MediaType.TEXT_PLAIN)
@Produces({ MediaType.APPLICATION_JSON })
public Response pushFirstInterviewDetails(@Context HttpServletRequest request, @Context ServletContext context,
        String jsonString) {
    log.log(Level.INFO, " First Interview --> push Details ");
    log.log(Level.INFO, " First Interview --> push Details  --> Data ...  ::::: " + jsonString);

    Gson googleJson = null;
    GsonBuilder builder = new GsonBuilder();
    AuditTrailMaintenance auditTrailMaint = new AuditTrailMaintenance();
    CandidateFirstInterviewMaintenance candidateFirstInterviewMaint = new CandidateFirstInterviewMaintenance();
    CandidateFirstInterview candidateFirstInterview = null;
    boolean status = false;

    try {
        log.log(Level.INFO, "First Interview --> Saving Candidate First Interview Details ... ");

        builder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() {
            @Override
            public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                    throws JsonParseException {
                Date date = LMSUtil.convertDateToyyyymmddhhmmssDashed(json.getAsString());
                if (null != date) {
                    return date;
                } else {
                    return LMSUtil.convertDateToyyyy_mm_dd(json.getAsString());
                }
            }
        });

        googleJson = builder.create();
        Type listType = new TypeToken<List<CandidateFirstInterview>>() {
        }.getType();
        List<CandidateFirstInterview> jsonObjList = googleJson.fromJson(jsonString, listType);
        candidateFirstInterview = jsonObjList.get(0);

        candidateFirstInterviewMaint.createNewCandidateFirstInterview(candidateFirstInterview, request);

        String conditionFieldName[] = { "addressCode" };
        String conditionFieldValue[] = { candidateFirstInterview.getCandidateCode() };
        new AddressBookMaintenance().updateAddressBookStatus("4/9", conditionFieldName, conditionFieldValue);

        log.log(Level.INFO, "First Interview --> Candidate First Interview Details Saved successfully... ");
        status = true;
    } catch (Exception e) {
        log.log(Level.SEVERE, "First Interview --> Error in Saving Candidate First Interview Details.");
        log.log(Level.SEVERE, e.getMessage());
        e.printStackTrace();
        StringWriter errors = new StringWriter();
        e.printStackTrace(new PrintWriter(errors));
        LogsMaintenance logsMain = new LogsMaintenance();
        logsMain.insertLogs("FirstInterviewRest", Level.SEVERE + "", errors.toString());

        auditTrailMaint.insertAuditTrail(
                new AuditTrail("Rest", AuditTrail.MODULE_TRAINING, AuditTrail.FUNCTION_FAIL, "FAILED"));

    } finally {
        builder = null;
        googleJson = null;
        auditTrailMaint = null;
        candidateFirstInterviewMaint = null;
        candidateFirstInterview = null;
        System.gc();
    }
    return Response.status(200).entity("[{\"status\":" + status + "}]").build();

}