Browse Source

more error resilience

dev
Cerys 3 months ago
parent
commit
a9362a58b6
  1. 20
      src/DataStructures/DeegraphNodeDetails.php

20
src/DataStructures/DeegraphNodeDetails.php

@ -14,9 +14,13 @@ class DeegraphNodeDetails
public function __construct(array $nodeDetails) public function __construct(array $nodeDetails)
{ {
$this->ID = $nodeDetails["@id"]; file_put_contents(
$this->CreatedAt = new DateTime($nodeDetails["@created"]); filename: __DIR__ . '/../../../../../LocalStorage/DevCache/' . (new DateTime())->format('u') . '.json',
$this->CreatorID = $nodeDetails["@creator"]; data: json_encode($nodeDetails)
);
// $this->ID = $nodeDetails["@id"];
// $this->CreatedAt = new DateTime($nodeDetails["@created"]);
// $this->CreatorID = $nodeDetails["@creator"];
foreach($nodeDetails as $key=>$value) { foreach($nodeDetails as $key=>$value) {
switch($key) switch($key)
@ -39,10 +43,14 @@ class DeegraphNodeDetails
public function AsJSON(): string public function AsJSON(): string
{ {
$createdAt = null;
if (isset($this->CreatedAt))
$createdAt = $this->CreatedAt->format(format: 'Y-m-d\TH:i:s.v\Z');
$builder = [ $builder = [
"@id" => $this->ID, "@id" => $this->ID ?? null,
"@created" => $this->CreatedAt->format(format: 'Y-m-d\TH:i:s.v\Z'), "@created" => $createdAt,
"@creator" => $this->CreatorID, "@creator" => $this->CreatorID ?? null,
]; ];
foreach($this->OtherProperties as $key=>$value) { foreach($this->OtherProperties as $key=>$value) {
$builder[$key] = $value; $builder[$key] = $value;

Loading…
Cancel
Save