code: public List<NodeTypeData> getAllNodeTypes() throws RepositoryException
     {
        try
        {
           IBindingFactory factory = null;
           PrivilegedExceptionAction<IBindingFactory> action = new PrivilegedExceptionAction<IBindingFactory>()
           {
              public IBindingFactory run() throws Exception
              {
                 return BindingDirectory.getFactory(NodeTypeValuesList.class);
              }
           };
           try
           {
              factory = SecurityHelper.doPrivilegedExceptionAction(action);
           }
           catch (PrivilegedActionException pae)
           {
              Throwable cause = pae.getCause();
              if (cause instanceof JiBXException)
              {
                 throw (JiBXException)cause;
              }
              else if (cause instanceof RuntimeException)
              {
                 throw (RuntimeException)cause;
              }
              else
              {
                 throw new RuntimeException(cause);
              }
           }
  
           IUnmarshallingContext uctx = factory.createUnmarshallingContext();
           NodeTypeValuesList nodeTypeValuesList = (NodeTypeValuesList)uctx.unmarshalDocument(is, null);
           List ntvList = nodeTypeValuesList.getNodeTypeValuesList();
           return converter.convertFromValueToData(ntvList);
        }
        catch (JiBXException e)
        {
           throw new RepositoryException(e);
        }
     }
docs: {@inheritDoc}