public class

RulesDelegate

extends Object
implements Rules
java.lang.Object
   ↳ org.mybatis.generator.internal.rules.RulesDelegate

Class Overview

This class can be used by plugins to easily implement a custom rules implementation. Plugins should respect the rules implementation calculated by the generator, as well as implementations from other plugins. In general if something is disabled by the default rules, or is disabled by some other plugin, it should not be re-enabled. Therefore, the following pattern of use is recommended:

 public class MyPlugin extends PluginAdapter {
   @Override
   public void initialized(IntrospectedTable introspectedTable) {
     MyRules myRules = new MyRules(introspectedTable.getRules());
     introspectedTable.setRules(myRules);
   }
 }
 
 public class MyRules extends RulesDelegate (
   public MyRules(Rules rules) {
     super(rules);
   }
   
   @Override
   public boolean generateInsert() {
     boolean rc = super.generateInsert();
     if (rc) {
       // Other plugins, and the default rules, enable generation
       // of the insert method.  We can decide to disable it here
       // if needed.
     }
     
     return rc;
   }
 

Summary

Fields
protected Rules rules
Public Constructors
RulesDelegate(Rules rules)
Public Methods
FullyQualifiedJavaType calculateAllFieldsClass()
Calculates the class that contains all fields.
boolean generateBaseColumnList()
Implements the rule for generating the SQL base column list element.
boolean generateBaseRecordClass()
Implements the rule for generating a base record.
boolean generateBaseResultMap()
Implements the rule for generating the result map without BLOBs.
boolean generateBlobColumnList()
Implements the rule for generating the SQL blob column list element.
boolean generateCountByExample()
boolean generateDeleteByExample()
Implements the rule for generating the delete by example SQL Map element and DAO method.
boolean generateDeleteByPrimaryKey()
Implements the rule for generating the delete by primary key SQL Map element and DAO method.
boolean generateExampleClass()
Implements the rule for generating an example class.
boolean generateInsert()
Implements the rule for generating the insert SQL Map element and DAO method.
boolean generateInsertSelective()
Implements the rule for generating the insert selective SQL Map element and DAO method.
boolean generateMyBatis3UpdateByExampleWhereClause()
Implements the rule for generating the SQL example where clause element specifically for use in the update by example methods.
boolean generatePrimaryKeyClass()
Implements the rule for determining whether to generate a primary key class.
boolean generateRecordWithBLOBsClass()
Implements the rule for generating a record with BLOBs.
boolean generateResultMapWithBLOBs()
Implements the rule for generating the result map with BLOBs.
boolean generateSQLExampleWhereClause()
Implements the rule for generating the SQL example where clause element.
boolean generateSelectByExampleWithBLOBs()
Implements the rule for generating the select by example with BLOBs SQL Map element and DAO method.
boolean generateSelectByExampleWithoutBLOBs()
Implements the rule for generating the select by example without BLOBs SQL Map element and DAO method.
boolean generateSelectByPrimaryKey()
Implements the rule for generating the select by primary key SQL Map element and DAO method.
boolean generateUpdateByExampleSelective()
boolean generateUpdateByExampleWithBLOBs()
boolean generateUpdateByExampleWithoutBLOBs()
boolean generateUpdateByPrimaryKeySelective()
Implements the rule for generating the update by primary key selective SQL Map element and DAO method.
boolean generateUpdateByPrimaryKeyWithBLOBs()
Implements the rule for generating the update by primary key with BLOBs SQL Map element and DAO method.
boolean generateUpdateByPrimaryKeyWithoutBLOBs()
Implements the rule for generating the update by primary key without BLOBs SQL Map element and DAO method.
IntrospectedTable getIntrospectedTable()
[Expand]
Inherited Methods
From class java.lang.Object
From interface org.mybatis.generator.internal.rules.Rules

Fields

protected Rules rules

Public Constructors

public RulesDelegate (Rules rules)

Public Methods

public FullyQualifiedJavaType calculateAllFieldsClass ()

Calculates the class that contains all fields. This class is used as the insert statement parameter, as well as the returned value from the select by primary key method. The actual class depends on how the domain model is generated.

Returns
  • the type of the class that holds all fields

public boolean generateBaseColumnList ()

Implements the rule for generating the SQL base column list element. Generate the element if any of the select methods are enabled.

Returns
  • true if the SQL base column list element should be generated

public boolean generateBaseRecordClass ()

Implements the rule for generating a base record.

Returns
  • true if the class should be generated

public boolean generateBaseResultMap ()

Implements the rule for generating the result map without BLOBs. If either select method is allowed, then generate the result map.

Returns
  • true if the result map should be generated

public boolean generateBlobColumnList ()

Implements the rule for generating the SQL blob column list element. Generate the element if any of the select methods are enabled, and the table contains BLOB columns.

Returns
  • true if the SQL blob column list element should be generated

public boolean generateCountByExample ()

public boolean generateDeleteByExample ()

Implements the rule for generating the delete by example SQL Map element and DAO method. If the deleteByExample statement is allowed, then generate the element and method.

Returns
  • true if the element and method should be generated

public boolean generateDeleteByPrimaryKey ()

Implements the rule for generating the delete by primary key SQL Map element and DAO method. If the table has a primary key, and the deleteByPrimaryKey statement is allowed, then generate the element and method.

Returns
  • true if the element and method should be generated

public boolean generateExampleClass ()

Implements the rule for generating an example class. The class should be generated if the selectByExample or deleteByExample or countByExample methods are allowed.

Returns
  • true if the example class should be generated

public boolean generateInsert ()

Implements the rule for generating the insert SQL Map element and DAO method. If the insert statement is allowed, then generate the element and method.

Returns
  • true if the element and method should be generated

public boolean generateInsertSelective ()

Implements the rule for generating the insert selective SQL Map element and DAO method. If the insert statement is allowed, then generate the element and method.

Returns
  • true if the element and method should be generated

public boolean generateMyBatis3UpdateByExampleWhereClause ()

Implements the rule for generating the SQL example where clause element specifically for use in the update by example methods. In iBATIS2, do not generate the element. In MyBatis, generate the element if the updateByExample statements are allowed.

Returns
  • true if the SQL where clause element should be generated

public boolean generatePrimaryKeyClass ()

Implements the rule for determining whether to generate a primary key class. If you return false from this method, and the table has primary key columns, then the primary key columns will be added to the base class.

Returns
  • true if a separate primary key class should be generated

public boolean generateRecordWithBLOBsClass ()

Implements the rule for generating a record with BLOBs. If you return false from this method, and the table had BLOB columns, then the BLOB columns will be added to the base class.

Returns
  • true if the record with BLOBs class should be generated

public boolean generateResultMapWithBLOBs ()

Implements the rule for generating the result map with BLOBs. If the table has BLOB columns, and either select method is allowed, then generate the result map.

Returns
  • true if the result map should be generated

public boolean generateSQLExampleWhereClause ()

Implements the rule for generating the SQL example where clause element. In iBATIS2, generate the element if the selectByExample, deleteByExample, updateByExample, or countByExample statements are allowed. In MyBatis3, generate the element if the selectByExample, deleteByExample, or countByExample statements are allowed.

Returns
  • true if the SQL where clause element should be generated

public boolean generateSelectByExampleWithBLOBs ()

Implements the rule for generating the select by example with BLOBs SQL Map element and DAO method. If the table has BLOB fields and the selectByExample statement is allowed, then generate the element and method.

Returns
  • true if the element and method should be generated

public boolean generateSelectByExampleWithoutBLOBs ()

Implements the rule for generating the select by example without BLOBs SQL Map element and DAO method. If the selectByExample statement is allowed, then generate the element and method.

Returns
  • true if the element and method should be generated

public boolean generateSelectByPrimaryKey ()

Implements the rule for generating the select by primary key SQL Map element and DAO method. If the table has a primary key as well as other fields, and the selectByPrimaryKey statement is allowed, then generate the element and method.

Returns
  • true if the element and method should be generated

public boolean generateUpdateByExampleSelective ()

public boolean generateUpdateByExampleWithBLOBs ()

public boolean generateUpdateByExampleWithoutBLOBs ()

public boolean generateUpdateByPrimaryKeySelective ()

Implements the rule for generating the update by primary key selective SQL Map element and DAO method. If the table has a primary key as well as other fields, and the updateByPrimaryKey statement is allowed, then generate the element and method.

Returns
  • true if the element and method should be generated

public boolean generateUpdateByPrimaryKeyWithBLOBs ()

Implements the rule for generating the update by primary key with BLOBs SQL Map element and DAO method. If the table has a primary key as well as other BLOB fields, and the updateByPrimaryKey statement is allowed, then generate the element and method.

Returns
  • true if the element and method should be generated

public boolean generateUpdateByPrimaryKeyWithoutBLOBs ()

Implements the rule for generating the update by primary key without BLOBs SQL Map element and DAO method. If the table has a primary key as well as other non-BLOB fields, and the updateByPrimaryKey statement is allowed, then generate the element and method.

Returns
  • true if the element and method should be generated

public IntrospectedTable getIntrospectedTable ()