code: private static String getActivationId(Match match) {
          final StringBuilder result = new StringBuilder( match.getRule().getName() );
          result.append(" [");
          List< ? extends FactHandle> factHandles = match.getFactHandles();
          for ( int i = 0; i < factHandles.size(); i++ ) {
              result.append( ((InternalFactHandle) factHandles.get(i)).getId() );
              if ( i < factHandles.size() - 1 ) {
                  result.append( ", " );
              }
          }
          return result.append( "]" ).toString();
      }
docs: Returns a String that can be used as unique identifier for an
  activation.  Since the activationId is the same for all assertions
  that are created during a single insert, update or retract, the
  key of the tuple of the activation is added too (which is a set
  of fact handle ids).
  
  @param match The match for which a unique id should be generated
  @return A unique id for the activation