code: public static String format( final String messagePattern, Object arg1, Object arg2 )
      {
          int i = 0;
          int patternLength = messagePattern.length();
          StringBuffer sbuf = new StringBuffer( patternLength + 50 );
  
          for( int L = 0; L < 2; L++ )
          {
              int j = messagePattern.indexOf( DELIM_START, i );
  
              if( j == -1 || ( j + 1 == patternLength ) )
              {
                  // no more variables
                  if( i == 0 )
                  { // this is a simple string
                      return messagePattern;
                  }
                  else
                  { // add the tail string which contains no variables and return the result.
                      sbuf.append( messagePattern.substring( i, patternLength ) );
                      return sbuf.toString();
                  }
              }
              else
              {
                  char delimStop = messagePattern.charAt( j + 1 );
                  if( delimStop != DELIM_STOP )
                  {
                      // invalid DELIM_START/DELIM_STOP pair
                      sbuf.append( messagePattern.substring( i, patternLength ) );
                      return sbuf.toString();
                  }
                  sbuf.append( messagePattern.substring( i, j ) );
                  if( L == 0 )
                  {
                      sbuf.append( arg1 );
                  }
                  else
                  {
                      sbuf.append( arg2 );
                  }
                  i = j + 2;
              }
          }
          // append the characters following the second {} pair.
          String remainder = messagePattern.substring( i, patternLength );
          sbuf.append( remainder );
          return sbuf.toString();
      }
docs: /**
  Performs a two argument substitution for the 'messagePattern' passed as
  parameter.
  <p>
  For example, <code>MessageFormatter.format("Hi {}. My name is {}.",
  "there", "David");</code> will return the string "Hi there. My name is David.".
  <p>
  The '{}' pair is called a formatting element. It serves to designate the
  location where the arguments need to be inserted within the message pattern.
  
  @param messagePattern The message pattern which will be parsed and formatted
  @param arg1           The first argument to replace the first formatting element
  @param arg2           The second argument to replace the second formatting element
  
  @return The formatted message