source: branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/Interfaces/IJsonItemConverter.cs @ 17284

Last change on this file since 17284 was 17284, checked in by dpiringe, 3 years ago

#3026: renamed namespace and project from HeuristicLab.Manufacture to HeuristicLab.JsonInterface

File size: 928 bytes
Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using System.Threading.Tasks;
6using HeuristicLab.Core;
7using Newtonsoft.Json.Linq;
8
9namespace HeuristicLab.JsonInterface {
10  public interface IJsonItemConverter {
11    /// <summary>
12    /// Extracts all infos out of an IItem to create a JsonItem.
13    /// (For template generation.)
14    /// </summary>
15    /// <param name="value">The IItem to extract infos.</param>
16    /// <returns>JsonItem with infos to reinitialise the IItem.</returns>
17    JsonItem Extract(IItem value);
18
19    /// <summary>
20    /// Injects the saved infos from the JsonItem into the IItem.
21    /// (Sets the necessary values.)
22    /// </summary>
23    /// <param name="item">The IItem which get the data injected.</param>
24    /// <param name="data">The JsonItem with the saved values.</param>
25    void Inject(IItem item, JsonItem data);
26  }
27}
28
Note: See TracBrowser for help on using the repository browser.