note
	description: "Summary description for {CONNECT_TASK_TO_PROJECT_DATA}."
	author: ""
	date: "$Date$"
	revision: "$Revision$"

class
	CONNECT_TASK_TO_PROJECT_DATA

inherit
	JSON_DESERIALIZABLE

create
	 make_from_json

feature

	task_UID : STRING
	project_UID: STRING

convertible_features (a_object: ANY): ARRAY [STRING]
		-- <Precursor>
	once
		Result := <<"task_UID", "project_UID">>
	end

make_from_json (a_json: STRING)
		-- <Precursor>
	require else											-- This must be here because the ancestor is False.
		True												    --	Leaving it False, will cause this to fail.
	local
		l_object: detachable JSON_OBJECT					        -- You must have one of these because ...
		l_any: detachable ANY
	do
		l_object := json_string_to_json_object (a_json)		-- ... the `a_json' STRING is parsed to a JSON_OBJECT.
		check attached_object: attached l_object end		  -- This proves that our JSON parsing was okay.

		task_UID := json_object_to_json_string_representation_attached ("task_UID", l_object)
		project_UID := json_object_to_json_string_representation_attached ("project_UID", l_object)
	end

			metadata_refreshed( a_current: ANY): ARRAY [JSON_METADATA]

			do
				Result := <<
							>>
			end

end
