Update BaseModel to include loadFromJson

This commit is contained in:
Matthew Ross 2016-04-25 20:05:03 -04:00
parent bda10a87ec
commit 6562a149d9
8 changed files with 38 additions and 22 deletions

View File

@ -23,7 +23,10 @@ class Activity extends BaseModel {
public function updateBean() {
}
public function loadFromBean($container, $bean) {
public abstract function loadFromBean($container, $bean) {
}
public abstract function loadFromJson($container, $obj) {
}
}

View File

@ -10,7 +10,10 @@ class Attachment extends BaseModel {
public function updateBean() {
}
public function loadFromBean($bean) {
public abstract function loadFromBean($container, $bean) {
}
public abstract function loadFromJson($container, $obj) {
}
}

View File

@ -10,7 +10,10 @@ class AutoAction extends BaseModel {
public function updateBean() {
}
public function loadFromBean($bean) {
public abstract function loadFromBean($container, $bean) {
}
public abstract function loadFromJson($container, $obj) {
}
}

View File

@ -12,6 +12,7 @@ abstract class BaseModel {
public abstract function updateBean();
public abstract function loadFromBean($container, $bean);
public abstract function loadFromJson($container, $obj);
public function save() {
$this->updateBean();

View File

@ -40,14 +40,11 @@ class Board extends BaseModel {
return;
}
$this->id = $bean->id;
$this->name = $bean->name;
$this->is_active = $bean->is_active;
$this->loadPropertiesFrom($bean);
$this->updateBean();
}
// TODO: Determine if all models should have loadFromJson method
public function loadFromJson($container, $json) {
$obj = json_decode($json);
@ -55,21 +52,21 @@ class Board extends BaseModel {
return;
}
$this->id = $obj->id;
$this->name = $obj->name;
$this->is_active = $obj->is_active;
foreach($obj->columns as $col) {
if ($col->id) {
$this->columns[] = new Column($container, $col->id);
} else {
// TODO: Determine if all models should have fromObject method
$this->columns[] = Column::fromObject($col);
}
}
$this->loadPropertiesFrom($obj);
$this->updateBean();
}
private function loadPropertiesFrom($obj) {
$this->id = $obj->id;
$this->name = $obj->name;
$this->is_active = $obj->is_active;
}
private function loadColumnsFrom($cols) {
foreach($cols as $col) {
$this->columns[] = Column::fromObject($col);
}
}
}

View File

@ -10,7 +10,10 @@ class Column extends BaseModel {
public function updateBean() {
}
public function loadFromBean($bean) {
public abstract function loadFromBean($container, $bean) {
}
public abstract function loadFromJson($container, $obj) {
}
}

View File

@ -10,7 +10,10 @@ class Comment extends BaseModel {
public function updateBean() {
}
public function loadFromBean($bean) {
public abstract function loadFromBean($container, $bean) {
}
public abstract function loadFromJson($container, $obj) {
}
}

View File

@ -10,7 +10,10 @@ class User extends BaseModel {
public function updateBean() {
}
public function loadFromBean($bean) {
public abstract function loadFromBean($container, $bean) {
}
public abstract function loadFromJson($container, $obj) {
}
}