Skip to content

Commit

Permalink
fix #275 better exception message when using a custom contract resolv…
Browse files Browse the repository at this point in the history
…er that does not extend ElasticResolver
  • Loading branch information
Mpdreamz committed Jul 26, 2013
1 parent c84ad58 commit 8b79505
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 2 deletions.
1 change: 1 addition & 0 deletions src/Nest.Tests.Unit/Nest.Tests.Unit.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,7 @@
<Compile Include="Search\SearchType\ScriptFieldTests.cs" />
<Compile Include="Internals\Serialize\SerializeTests.cs" />
<Compile Include="Search\Sort\SortTests.cs" />
<Compile Include="Settings\UsePrettyResponseTests.cs" />
<Compile Include="Test.Designer.cs">
<DependentUpon>Test.settings</DependentUpon>
<AutoGen>True</AutoGen>
Expand Down
3 changes: 2 additions & 1 deletion src/Nest/Resolvers/Converters/IndexNameMarkerConverter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,14 @@ public override void WriteJson(JsonWriter writer, object value, JsonSerializer s
writer.WriteNull();
return;
}

var settings = serializer.ContractResolver as ElasticResolver;
if (settings != null && settings.ConnectionSettings != null)
{
var typeName = marker.Resolve(settings.ConnectionSettings);
writer.WriteValue(typeName);
}
else throw new Exception("Could not find connection settings on the json contract resolver");
else throw new Exception("If you use a custom contract resolver be sure to subclass from ElasticResolver");
}

public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
Expand Down
2 changes: 1 addition & 1 deletion src/Nest/Resolvers/Converters/TypeNameMarkerConverter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ public override void WriteJson(JsonWriter writer, object value, JsonSerializer s
var typeName = marker.Resolve(settings.ConnectionSettings);
writer.WriteValue(typeName);
}
else throw new Exception("Could not find connection settings on the json contract resolver");
else throw new Exception("If you use a custom contract resolver be sure to subclass from ElasticResolver");
}

public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
Expand Down

0 comments on commit 8b79505

Please sign in to comment.