package com.chenyang.druid.sql.dialect.db2.ast.stmt;

import com.chenyang.druid.DbType;
import com.chenyang.druid.sql.ast.SQLExpr;
import com.chenyang.druid.sql.ast.statement.SQLAlterStatement;
import com.chenyang.druid.sql.ast.statement.SQLCreateRoleStatement;
import com.chenyang.druid.sql.dialect.db2.visitor.DB2ASTVisitor;
import com.chenyang.druid.sql.visitor.SQLASTVisitor;

public class DB2CreateRoleStatement extends SQLCreateRoleStatement implements DB2SQLStatement, SQLAlterStatement {
   private boolean passwordFlag;
   public boolean encrypted;
   public boolean unencrypted;
   public boolean expired;
   public boolean disable;
   public SQLExpr password;

   public SQLExpr getPassword() {
      return this.password;
   }

   public void setPassword(SQLExpr password) {
      this.password = password;
   }

   public boolean isPasswordFlag() {
      return this.passwordFlag;
   }

   public void setPasswordFlag(boolean passwordFlag) {
      this.passwordFlag = passwordFlag;
   }

   public boolean isEncrypted() {
      return this.encrypted;
   }

   public void setEncrypted(boolean encrypted) {
      this.encrypted = encrypted;
   }

   public boolean isUnencrypted() {
      return this.unencrypted;
   }

   public void setUnencrypted(boolean unencrypted) {
      this.unencrypted = unencrypted;
   }

   public boolean isExpired() {
      return this.expired;
   }

   public void setExpired(boolean expired) {
      this.expired = expired;
   }

   public boolean isDisable() {
      return this.disable;
   }

   public void setDisable(boolean disable) {
      this.disable = disable;
   }

   public DB2CreateRoleStatement() {
      this.dbType = DbType.db2;
   }

   public void accept0(SQLASTVisitor visitor) {
      this.accept0((DB2ASTVisitor)visitor);
   }

   public void accept0(DB2ASTVisitor visitor) {
      visitor.visit(this);
   }
}
