code: func Generate(schema *rdl.Schema, params *GeneratorParams) error {
  	packageDir, err := GenerationDir(params.Outdir, schema, params.Namespace)
  	if err != nil {
  		return err
  	}
  	//	getSetters := GenerationBoolOptionSet(options, "getsetters")
  	registry := rdl.NewTypeRegistry(schema)
  	for _, t := range schema.Types {
  		tName, _, _ := rdl.TypeInfo(t)
  		if strings.HasPrefix(string(tName), "rdl.") {
  			continue
  		}
  		err := generateJavaType(params.Banner, schema, registry, packageDir, t, params.Namespace, params.GetSetters)
  		if err != nil {
  			return err
  		}
  	}
  	cName := capitalize(string(schema.Name)) + "Schema"
  	out, file, _, err := genutil.OutputWriter(packageDir, cName, ".java")
  	if err != nil {
  		return err
  	}
  	err = GenerateSchema(schema, cName, out, params.Namespace, params.Banner)
  	out.Flush()
  	file.Close()
  	if err != nil {
  		return err
  	}
  	return nil
  }
docs: // GenerateJavaModel generates the model code for the types defined in the RDL schema.