// @Override
  public void executeCommand() throws HippoBusinessException {

    List<Topic> topicsToProcess = getTopicsToProcess();

    Topic tag = getTagToAddThingsTo();
    Topic removeFromThis = getRemoveFromThis();

    System.out.println(toString());

    for (Topic toProcess : topicsToProcess) {

      // System.out.println("AddToTagCommand to process " + toProcess + " occ "
      // + (toProcess instanceof Occurrence));

      if (toProcess instanceof Occurrence) {
        Occurrence occToProcces = (Occurrence) toProcess;

        // System.out.println("AddToTagCommand. Process as occ");
        tag.addOccurence(occToProcces);

      } else {

        // System.out.println("AddToTagCommand. Process as topic");
        toProcess.tagTopic(tag);
      }

      if (null != removeFromThis) {
        if (toProcess instanceof Occurrence) {
          Occurrence occToProcces = (Occurrence) toProcess;
          removeFromThis.removeOcc(occToProcces);
        } else {
          toProcess.removeType(removeFromThis);
        }
        // throw new HippoBusinessException("Error Removing Occurrence");
      }
    }
  }