134
134
# returns a DFGVariable
135
135
function unpackVariable (dfg:: G ,
136
136
packedProps:: Dict{String, Any} ;
137
- unpackPPEs:: Bool = true ,
137
+ unpackPPEs:: Bool = haskey (packedProps, " ppeDict " ) ,
138
138
unpackSolverData:: Bool = true ,
139
139
unpackBigData:: Bool = true ) where G <: AbstractDFG
140
140
@debug " Unpacking variable:\r\n $packedProps "
@@ -152,7 +152,25 @@ function unpackVariable(dfg::G,
152
152
else
153
153
tags = Symbol .(packedProps[" tags" ])
154
154
end
155
- ppeDict = unpackPPEs ? JSON2. read (packedProps[" ppeDict" ], Dict{Symbol, MeanMaxPPE}) : Dict {Symbol, MeanMaxPPE} ()
155
+ ppeDict = if unpackPPEs
156
+ JSON2. read (packedProps[" ppeDict" ], Dict{Symbol, MeanMaxPPE})
157
+ elseif haskey (packedProps," ppes" ) && packedProps[" ppes" ] isa AbstractVector
158
+ ppedict = Dict {Symbol, MeanMaxPPE} ()
159
+ for pd in packedProps[" ppes" ]
160
+ pk = pd[" solveKey" ]
161
+ _pk = Symbol (pk)
162
+ ppedict[_pk] = MeanMaxPPE (;
163
+ solveKey= _pk,
164
+ suggested= float .(pd[" suggested" ]),
165
+ max= float .(pd[" max" ]),
166
+ mean= float .(pd[" mean" ]),
167
+ lastUpdatedTimestamp= DateTime (string (pd[" lastUpdatedTimestamp" ]))
168
+ )
169
+ end
170
+ ppedict
171
+ else
172
+ Dict {Symbol, MeanMaxPPE} ()
173
+ end
156
174
smallData = JSON2. read (packedProps[" smallData" ], Dict{Symbol, SmallDataTypes})
157
175
158
176
variableTypeString = if haskey (packedProps, " softtype" )
0 commit comments