Projekt

Allgemein

Profil

Herunterladen als
Herunterladen (2,62 KB) Statistiken
| Zweig: | Revision:
c22391b2 Christian Ehringfeld
/*
* Copyright (C) 2015 Christian Ehringfeld <c.ehringfeld@t-online.de>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
24c5480c Christian Ehringfeld
#include "relation.h"
using namespace CuteEntityManager;

Relation::Relation() {
}

033279c9 SebastianDiel
Relation::Relation(QString propertyName, bool optional, RelationType type) {
24c5480c Christian Ehringfeld
this->propertyName = propertyName;
this->type = type;
this->optional = optional;
da565582 Christian Ehringfeld
this->cascadeType = {CascadeType::MERGE,
CascadeType::PERSIST,
CascadeType::REFRESH
47f9301a Christian Ehringfeld
};
ba800d6d Christian Ehringfeld
}

e0e1ead8 Christian Ehringfeld
Relation::Relation(QString propertyName, RelationType type, QString mappedBy,
91ed1164 Christian Ehringfeld
QList<CascadeType> cascadeType) {
ba800d6d Christian Ehringfeld
this->propertyName = propertyName;
this->type = type;
this->mappedBy = mappedBy;
this->optional = true;
da565582 Christian Ehringfeld
if (this->type == RelationType::ONE_TO_ONE) {
this->cascadeType = {CascadeType::ALL};
f4e3904b Christian Ehringfeld
} else {
this->cascadeType = cascadeType;
}
24c5480c Christian Ehringfeld
}

Relation::~Relation() {
}

RelationType Relation::getType() const {
return type;
}

ea09b5be Christian Ehringfeld
QString Relation::getTypeAsString() const {
QString r = "";
switch (this->type) {
case RelationType::ONE_TO_MANY:
r = "ONE_TO_MANY";
break;
case RelationType::MANY_TO_MANY:
r = "MANY_TO_MANY";
break;
case RelationType:: MANY_TO_ONE:
r = "MANY_TO_ONE";
break;
case RelationType::ONE_TO_ONE:
r = "ONE_TO_ONE";
break;
}
return r;
}

24c5480c Christian Ehringfeld
void Relation::setType(const RelationType &value) {
type = value;
}

QString Relation::getPropertyName() const {
return propertyName;
}

void Relation::setPropertyName(const QString &value) {
propertyName = value;
}
bool Relation::getOptional() const {
return optional;
}

void Relation::setOptional(bool value) {
optional = value;
}
ba800d6d Christian Ehringfeld
QString Relation::getMappedBy() const {
return mappedBy;
}

void Relation::setMappedBy(const QString &value) {
mappedBy = value;
}

91ed1164 Christian Ehringfeld
QList<CascadeType> Relation::getCascadeType() const {
ba800d6d Christian Ehringfeld
return cascadeType;
}

91ed1164 Christian Ehringfeld
void Relation::setCascadeType(const QList<CascadeType> &value) {
ba800d6d Christian Ehringfeld
cascadeType = value;
}