Package com.gadglet.gadgets.discussions.server

Examples of com.gadglet.gadgets.discussions.server.DiscussionsList


      throws RequestException {

    String replayMsg = null;
    String replayTo = null;
    String replayOrder = null;
    DiscussionsList discussion = null;

    if (request.getParameter(Params.DICUSSION_REPLY.getParamName()) == null
        || request.getParameter(Params.DICUSSION_REPLY.getParamName())
            .isEmpty())
      throw new RequestException(ReqErrorTypes.MISSING_ARGUMENT);

    if (request.getParameter(Params.DISCUSSION_PARENT_ID.getParamName()) == null
        || request.getParameter(
            Params.DISCUSSION_PARENT_ID.getParamName()).isEmpty())
      throw new RequestException(ReqErrorTypes.MISSING_ARGUMENT);

    replayMsg = request
        .getParameter(Params.DICUSSION_REPLY.getParamName());
    replayTo = request.getParameter(Params.DISCUSSION_PARENT_ID
        .getParamName());

    Replys newReplay = new Replys(request, replayMsg, replayTo);

    PersistenceManager pm = PMF.get().getPersistenceManager();

    discussion = (DiscussionsList) helper.getSingleItemByKeyForAction(pm,
        request, DiscussionsList.class);

    if (discussion == null)
      throw new RequestException(ReqErrorTypes.ITEM_NOT_FOUND);

    List<Replys> replays = discussion.getReply();

    replayOrder = calcOrder(discussion, replayTo);

    newReplay.setReplyOrder(replayOrder);
View Full Code Here


  @Override
  public void doView(GadgletRequestWrapper request, GadgletResponse response)
      throws RequestException {

    DiscussionsList discussion = null;

    List<Replys> replays = null;

    PersistenceManager pm = null;
    ;
    try {
      pm = PMF.get().getPersistenceManager();

      discussion = (DiscussionsList) helper.getSingleItemByKeyForAction(
          pm, request, DiscussionsList.class);

      if (discussion == null)
        throw new RequestException(ReqErrorTypes.ITEM_NOT_FOUND);

      if (discussion.getReply() != null) {
        replays = discussion.getReply();
        for (Replys replay : replays);

      }
    } catch (RequestException e) {
      // TODO Auto-generated catch block
      throw e;
    } catch (Exception e) {
      log.warning(e.getMessage());
      throw new RequestException(ReqErrorTypes.REQUEST_FAILED);
    } finally {
      pm.close();
    }

    ContentRecord item = response.newItem();

    SimpleDateFormat df = new SimpleDateFormat("MMM/dd/yy hh:mm");
    String formatedDate = null;

    item.addItemKeyField(discussion.getContentItemKey());
    item.addItemField(Params.DISCUSSION_TEXT.getParamName(),
        discussion.getDiscussion());

    formatedDate = df.format(discussion.getCreation());

    if (formatedDate != null)
      item.addItemField(Params.DISCUSSION_MSD_DATE.getParamName(),
          formatedDate);
    else
      item.addItemField(Params.DISCUSSION_MSD_DATE.getParamName(), "");

    item.addItemField(Params.DISCUSSION_LEVEL.getParamName(), "0");

    item.setContentName(Params.DISCUSSION_TEXT.getParamName());

    DomainUser writer = DomainUserUtils.getDomainUserByUniqueId(discussion
        .getOwnerId(), request.getCurrentDomainUser().getAccount());

    item.addItemField(ProfileFields.PROFILE_NICKNAME.getParamName(),
        writer.getNickName());
    item.addItemField(ProfileFields.PROFILE_TITLE.getParamName(),
        writer.getTitle());

    if (writer.getPhotoUrl() != null && writer.getPhotoUrl().length() > 0)
      item.addItemField(
          ProfileFields.PROFILE_THUMBNAILURL.getParamName(),
          writer.getPhotoUrl());

    item.setGadgetPermissions(discussion.isUserEdit(request),
        discussion.isOwnedByMe(request),
        discussion.isOwnedByMe(request));

    if (replays != null) {

      for (Replys replay : replays) {
        int level = 0;

        item = response.newItem();
        item.addItemKeyField(replay.getId());
        item.addItemField(Params.DISCUSSION_TEXT.getParamName(),
            replay.getReply());

        formatedDate = df.format(replay.getCdate());

        if (formatedDate != null)
          item.addItemField(
              Params.DISCUSSION_MSD_DATE.getParamName(),
              formatedDate);
        else
          item.addItemField(
              Params.DISCUSSION_MSD_DATE.getParamName(), "");

        if (replay.getReplyOrder() != null)
          level = replay.getReplyOrder().split("\\*").length - 1;
        // this will be used to create UI message indentation
        item.addItemField(Params.DISCUSSION_LEVEL.getParamName(),
            new Integer(level).toString());

        item.setContentName(Params.DICUSSION_REPLY.getParamName());

        writer = DomainUserUtils.getDomainUserByUniqueId(replay
            .getUserName(), request.getCurrentDomainUser()
            .getAccount());

        item.addItemField(
            ProfileFields.PROFILE_NICKNAME.getParamName(),
            writer.getNickName());
        item.addItemField(ProfileFields.PROFILE_TITLE.getParamName(),
            writer.getTitle());

        if (writer.getPhotoUrl() != null
            && writer.getPhotoUrl().length() > 0)
          item.addItemField(
              ProfileFields.PROFILE_THUMBNAILURL.getParamName(),
              writer.getPhotoUrl());

        item.setGadgetPermissions(discussion.isUserEdit(request),
            false, false);

      }
    }

View Full Code Here

   * */
  @Override
  public void doDelete(GadgletRequestWrapper request, GadgletResponse response)
      throws RequestException {
    PersistenceManager pm;   
    DiscussionsList item;
    List<SharedItemReff> sharing ;
   
    pm = PMF.get().getPersistenceManager();
    pm.currentTransaction().begin();
    try {
      item = (DiscussionsList) helper.getSingleItemByKeyForAction(pm, request, DiscussionsList.class);

      if (item == null)
        throw new RequestException(ReqErrorTypes.ITEM_NOT_FOUND);
     
      sharing =   item.getSharedItemReff();
     
      for(SharedItemReff share: sharing)
      {
        // in case not the owner (shared item)
        if(share.getSharedWithId().equals(request.getCurrentUserId()) && !share.getSharingType().equals(SharingType.OWNER))
View Full Code Here

TOP

Related Classes of com.gadglet.gadgets.discussions.server.DiscussionsList

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.