Skip to content

Commit

Permalink
Add Term facade IDG-3105
Browse files Browse the repository at this point in the history
  • Loading branch information
hlu2 committed Aug 12, 2019
1 parent 3a5179b commit 8ae69e1
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions src/Facades/Term.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?php
namespace QuickBooksOnline\API\Facades;

class Term{

public static function create(array $data, $throwException = TRUE){
if(!isset($data) || empty($data)) throw new \Exception("Passed array for creating Term is Empty");
$TermObject = FacadeHelper::reflectArrayToObject("Term", $data, $throwException );
return $TermObject;
}

/**
* This is an immutable function
*/
public static function update($objToUpdate, array $data){
$classOfObj = get_class($objToUpdate);
if(strcmp($classOfObj, FacadeHelper::simpleAppendClassNameSpace("Term")) != 0){
throw new \Exception("Target object class:{" . $classOfObj . "} is not an instance of Term.");
}
$newTermObj = Term::create($data);
$clonedOfObj = FacadeHelper::cloneObj($objToUpdate);
FacadeHelper::mergeObj($clonedOfObj, $newTermObj);
return $clonedOfObj;
}

}

0 comments on commit 8ae69e1

Please # to comment.