umbrello: SQLWriter Class Reference

umbrello 2.38.3 Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SQLWriter Class Reference

`#include <sqlwriter.h>`

Inheritance diagram for SQLWriter:

## Public Member Functions
| SQLWriter ()
virtual | ~SQLWriter ()
virtual void | writeClass (UMLClassifier *c)
virtual Uml::ProgrammingLanguage::Enum | language () const
virtual QStringList | defaultDatatypes () const
virtual QStringList | reservedKeywords () const
Public Member Functions inherited from SimpleCodeGenerator
| SimpleCodeGenerator (bool createDirHierarchyForPackages=true)
virtual | ~SimpleCodeGenerator ()
void | writeCodeToFile (UMLClassifierList &concepts)
void | writeCodeToFile ()
virtual void | writeClass (UMLClassifier *c)=0
Public Member Functions inherited from CodeGenerator
| CodeGenerator ()
virtual | ~CodeGenerator ()
bool | addCodeDocument (CodeDocument *add_object)
bool | removeCodeDocument (CodeDocument *remove_object)
CodeDocumentList * | getCodeDocumentList ()
QString | getUniqueID (CodeDocument *codeDoc)
virtual void | saveToXMI (QXmlStreamWriter &writer)
CodeDocument * | findCodeDocumentByID (const QString &id)
virtual void | writeCodeToFile ()
virtual void | writeCodeToFile (UMLClassifierList &list)
void | setIncludeHeadings (bool i)
bool | includeHeadings () const
void | setHeadingFileDir (const QString &)
QString | headingFileDir () const
void | setForceDoc (bool f)
bool | forceDoc () const
void | setSectionCommentPolicy (CodeGenerationPolicy::WriteSectionCommentsPolicy f)
bool | forceSections () const
virtual QString | getHeadingFile (const QString &file)
QString | findFileName (CodeDocument *codeDocument)
virtual void | loadFromXMI (QDomElement &element)
virtual Uml::ProgrammingLanguage::Enum | language () const =0
CodeDocument * | findCodeDocumentByClassifier (UMLClassifier *classifier)
virtual QStringList | defaultDatatypes () const
virtual bool | isReservedKeyword (const QString &keyword)
virtual QStringList | reservedKeywords () const
virtual void | createDefaultStereotypes ()
virtual void | initFromParentDocument ()=0

## Protected Member Functions
virtual void | printEntityAttributes (QTextStream &sql, UMLEntityAttributeList entityAttributeList)
virtual void | printUniqueConstraints (QTextStream &sql, UMLClassifierListItemList constrList)
virtual void | printForeignKeyConstraints (QTextStream &sql, UMLClassifierListItemList constrList)
virtual void | printCheckConstraints (QTextStream &sql, UMLClassifierListItemList constrList)
virtual void | printIndex (QTextStream &sql, UMLEntity *ent, UMLEntityAttributeList entAttList)
virtual void | printAutoIncrements (QTextStream &sql, UMLEntityAttributeList entAttList)
Protected Member Functions inherited from SimpleCodeGenerator
QString | findFileName (UMLPackage *concept, const QString &ext)
QString | overwritableName (UMLPackage *concept, const QString &name, const QString &ext)
bool | hasDefaultValueAttr (UMLClassifier *c)
bool | hasAbstractOps (UMLClassifier *c)
QString | indent ()
virtual void | initFromParentDocument ()
Protected Member Functions inherited from CodeGenerator
QString | overwritableName (const QString &name, const QString &extension)
bool | openFile (QFile &file, const QString &name)
void | writeListedCodeDocsToFile (CodeDocumentList *docs)
virtual void | finalizeRun ()

## Protected Attributes
QStringList | m_enumsGenerated
UMLEntity * | m_pEntity
Protected Attributes inherited from SimpleCodeGenerator
QString | className_
QString | fileName_
QMap< UMLPackage *, QString > | m_fileMap
bool | m_createDirHierarchyForPackages
QString | m_indentation
int | m_indentLevel
QString | m_endl
Protected Attributes inherited from CodeGenerator
QHash< QString, CodeDocument * > | m_codeDocumentDictionary
bool | m_applyToAllRemaining
UMLDoc * | m_document

## Additional Inherited Members
Public Types inherited from CodeGenerator
enum | GenerationState { Generated , Failed , Skipped }
Public Slots inherited from SimpleCodeGenerator
virtual void | syncCodeToDocument ()
Public Slots inherited from CodeGenerator
virtual void | syncCodeToDocument ()
Signals inherited from CodeGenerator
void | codeGenerated (UMLClassifier *concept, bool generated)
void | codeGenerated (UMLClassifier *concept, CodeGenerator::GenerationState result)
void | showGeneratedFile (const QString &filename)
Static Public Member Functions inherited from CodeGenerator
static QString | cleanName (const QString &name)
static QString | formatDoc (const QString &text, const QString &linePrefix=QStringLiteral(" *"), int lineWidth=80)
static QString | formatFullDocBlock (const QString &text, const QString &blockHeader=QStringLiteral("/* "), const QString &blockFooter=QStringLiteral(" */"), const QString &linePrefix=QStringLiteral(" *"), int lineWidth=80)
static QString | formatSourceCode (const QString &code, const QString &indentation)
static void | findObjectsRelated (UMLClassifier *c, UMLPackageList &cList)

## Detailed Description

Class SQLWriter is a code generator for UMLClassifier objects. Create an instance of this class, and feed it a UMLClassifier when calling writeClass and it will generate a sql source file for that concept.

## Constructor & Destructor Documentation

## ◆ SQLWriter()

SQLWriter::SQLWriter | ( |  | ) |

## ◆ ~SQLWriter()

SQLWriter::~SQLWriter | ( |  | ) |
| virtual

## Member Function Documentation

## ◆ defaultDatatypes()

QStringList SQLWriter::defaultDatatypes | ( |  | ) | const
| virtual

Reimplement method from CodeGenerator.

Reimplemented from CodeGenerator.

Reimplemented in MySQLWriter, and PostgreSQLWriter.

## ◆ language()

Uml::ProgrammingLanguage::Enum SQLWriter::language | ( |  | ) | const
| virtual

Returns "SQL".

Implements CodeGenerator.

Reimplemented in MySQLWriter, and PostgreSQLWriter.

## ◆ printAutoIncrements()

void SQLWriter::printAutoIncrements | ( | QTextStream & | sql,
|  | UMLEntityAttributeList | entAttList
| ) |  |
| protectedvirtual

Handles AutoIncrements. The derived classes provide the actual body.

Parameters

  sql | The Stream we should print to
  entAttList | The List of Entity Attributes that we want to auto increment

Reimplemented in MySQLWriter, and PostgreSQLWriter.

## ◆ printCheckConstraints()

void SQLWriter::printCheckConstraints | ( | QTextStream & | sql,
|  | UMLClassifierListItemList | constrList
| ) |  |
| protectedvirtual

Prints out Check Constraints as "ALTER TABLE" statements.

Parameters

  sql | The stream we should print to
  constrList | The checkConstraints to be printed

Reimplemented in MySQLWriter.

## ◆ printEntityAttributes()

void SQLWriter::printEntityAttributes | ( | QTextStream & | sql,
|  | UMLEntityAttributeList | entityAttributeList
| ) |  |
| protectedvirtual

Prints out attributes as columns in the table.

Parameters

  sql | the stream we should print to
  entityAttributeList | the attributes to be printed

## ◆ printForeignKeyConstraints()

void SQLWriter::printForeignKeyConstraints | ( | QTextStream & | sql,
|  | UMLClassifierListItemList | constrList
| ) |  |
| protectedvirtual

Prints out foreign key constraints as "ALTER TABLE" statements.

Parameters

  sql | the stream we should print to
  constrList | the foreignkey constraints to be printed

Reimplemented in MySQLWriter.

## ◆ printIndex()

void SQLWriter::printIndex | ( | QTextStream & | sql,
|  | UMLEntity * | ent,
|  | UMLEntityAttributeList | entAttList
| ) |  |
| protectedvirtual

Prints out Indexes as "CREATE INDEX " statements.

Parameters

  sql | The Stream we should print to
  ent | The Entity's attributes on which we want to create an Index
  entAttList | The list of entityattributes to create an index upon

## ◆ printUniqueConstraints()

void SQLWriter::printUniqueConstraints | ( | QTextStream & | sql,
|  | UMLClassifierListItemList | constrList
| ) |  |
| protectedvirtual

Prints out unique constraints (including primary key) as "ALTER TABLE" statements.

Parameters

  sql | the stream we should print to
  constrList | the unique constraints to be printed

## ◆ reservedKeywords()

QStringList SQLWriter::reservedKeywords | ( |  | ) | const
| virtual

Get list of reserved keywords.

Reimplemented from CodeGenerator.

## ◆ writeClass()

void SQLWriter::writeClass | ( | UMLClassifier * | c | ) |
| virtual

Call this method to generate sql code for a UMLClassifier.

Parameters

  c | the class to generate code for

Implements SimpleCodeGenerator.

## Member Data Documentation

## ◆ m_enumsGenerated

QStringList SQLWriter::m_enumsGenerated
| protected

## ◆ m_pEntity

UMLEntity* SQLWriter::m_pEntity
| protected

The documentation for this class was generated from the following files:

- umbrello/codegenerators/sql/sqlwriter.h
- umbrello/codegenerators/sql/sqlwriter.cpp