How do I pass a Java HashMap to a custom Mule connector?

Right now the connector code looks like this:

// myConnector class
 * Process item
 * {@sample.xml ../../../doc/my-connector.xml.sample myConnector:process}
 * @param binary
 *          the item to process
 * @param stuff
 *          key value pairs for processing
 * @return the status as a string
 * @throws NullPointerException
 *          when one of the parameters are null
public String process (  @Payload final byte[] binary,
                        final HashMap<String,String> stuff)
        throws NullPointerException {...}

// myConnector.sample
<!-- BEGIN_INCLUDE(myConnector:process) -->
<!-- END_INCLUDE(myConnector:process) —>

I have a HashMap stored in a session header inside my Mule flow (#[header:session:myHashMap]), but I can't figure out how to send it to the connector.

--- update ---

If I change the connector sample and the connector element to match I get an error when I built the connector.

// myConnector.sample
<!-- BEGIN_INCLUDE(myConnector:process) -->
    <myConnector:process stuff="#[stuff]"/>
<!-- END_INCLUDE(myConnector:process) —>

// my mule flow
    <myConnector:process stuff="#[sessionVars.myHashMap]"/>

// the error
[ERROR] Error validating example: cvc-complex-type.3.2.2: Attribute 'stuff' is not allowed to appear in element 'myConnector:process'. Failing example: <myConnector:process stuff="#[stuff]"/>
[ERROR] error on execute: An error ocurred while the DevKit was generating Java code. Check the logs for further details.


What about:

  <myConnector:stuff ref="#[sessionVars['myHashMap']]" />

Need Your Help