Code Duplication    Length = 34-36 lines in 2 locations

web_interface/astpp/system/libraries/Xmlrpc.php 2 locations

@@ 546-579 (lines=34) @@
543
	/**
544
	 * @param integer $xmlrpc_val
545
	 */
546
	function xmlrpc_decoder($xmlrpc_val)
547
	{
548
		$kind = $xmlrpc_val->kindOf();
549
550
		if ($kind == 'scalar')
551
		{
552
			return $xmlrpc_val->scalarval();
553
		} elseif ($kind == 'array')
554
		{
555
			reset($xmlrpc_val->me);
556
			list($a, $b) = each($xmlrpc_val->me);
557
			$size = count($b);
558
559
			$arr = array();
560
561
			for ($i = 0; $i < $size; $i++)
562
			{
563
				$arr[] = $this->xmlrpc_decoder($xmlrpc_val->me['array'][$i]);
564
			}
565
			return $arr;
566
		} elseif ($kind == 'struct')
567
		{
568
			reset($xmlrpc_val->me['struct']);
569
			$arr = array();
570
571
			while (list($key, $value) = each($xmlrpc_val->me['struct']))
572
			{
573
				$arr[$key] = $this->xmlrpc_decoder($value);
574
			}
575
			return $arr;
576
		}
577
	}
578
579
580
	//-------------------------------------
581
	//  ISO-8601 time to server or UTC time
582
	//-------------------------------------
@@ 1160-1195 (lines=36) @@
1157
	}
1158
1159
1160
	function decode_message($param)
1161
	{
1162
		$kind = $param->kindOf();
1163
1164
		if ($kind == 'scalar')
1165
		{
1166
			return $param->scalarval();
1167
		} elseif ($kind == 'array')
1168
		{
1169
			reset($param->me);
1170
			list($a, $b) = each($param->me);
1171
1172
			$arr = array();
1173
1174
			for ($i = 0; $i < count($b); $i++)
1175
			{
1176
				$arr[] = $this->decode_message($param->me['array'][$i]);
1177
			}
1178
1179
			return $arr;
1180
		} elseif ($kind == 'struct')
1181
		{
1182
			reset($param->me['struct']);
1183
1184
			$arr = array();
1185
1186
			while (list($key, $value) = each($param->me['struct']))
1187
			{
1188
				$arr[$key] = $this->decode_message($value);
1189
			}
1190
1191
			return $arr;
1192
		}
1193
	}
1194
1195
} // End XML_RPC_Messages class
1196
1197
1198