Skip to content

Add support for fetch specs defined in the EOModel #20

Description

@mariussoutier

In the EOModel I have a fetch spec defined with the qualifier $patient of type Patient. This auto-generates a method which does:

public static NSArray<net.starhealthcare.sffoundation.model.SFIncident> fetchIncidentsWithDiagnosesForPatient(EOEditingContext editingContext, NSDictionary<String, Object> bindings) {
  EOFetchSpecification fetchSpec = EOFetchSpecification.fetchSpecificationNamed("fetchSpecName", "Incident");
  fetchSpec = fetchSpec.fetchSpecificationWithQualifierBindings(bindings);
  return editingContext.objectsWithFetchSpecification(fetchSpec);
}

I then call it like this:

fetchIncidentsWithDiagnosesForPatient(this.editingContext(), patient);

This does not work with WOUnit, the following exception gets thrown:

com.webobjects.eocontrol.EOQualifier$QualifierVariableSubstitutionException: Error in variable substitution: value for variable $patient not found
at com.webobjects.eocontrol.EOKeyValueQualifier.qualifierWithBindings(EOKeyValueQualifier.java:270)
at com.webobjects.eocontrol.EOQualifier._andOrQualifierWithBindingsAndOptions(EOQualifier.java:719)
at com.webobjects.eocontrol.EOAndQualifier.qualifierWithBindings(EOAndQualifier.java:146)
at com.webobjects.eocontrol.EOFetchSpecification.fetchSpecificationWithQualifierBindings(EOFetchSpecification.java:182)

Metadata

Metadata

Assignees

Labels

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions