/* This class was generated by Direct To Web Services */
import com.webobjects.foundation.*;
import com.webobjects.eocontrol.*;
import com.webobjects.eoaccess.*;
import com.webobjects.appserver.*;
import com.webobjects.webservices.support.xml.*;
import com.webobjects.directtoweb.*;
import com.webobjects.webservices.generation.*;
import java.math.*;
public class extends {
protected static NSArray _inputPartNames = new NSArray(new String[]{});
protected static NSArray _inputPartKeyPaths = new NSArray(new String[]{});
protected static NSArray _outputPartNames = new NSArray(new String[]{});
protected static NSArray _outputPartKeyPaths = new NSArray(new String[]{});
protected static NSArray _comparisonKeys = new NSArray(new String[]{});
protected static NSArray _keyPathsForSerialization = new NSArray(new String[]{});
protected static NSDictionary _outputPartKeyPathsMap = new NSDictionary(_outputPartKeyPaths, _outputPartNames);
protected static NSDictionary _inputPartKeyPathsMap = new NSDictionary(_inputPartKeyPaths, _inputPartNames);
protected static NSDictionary _comparisonKeysMap = new NSDictionary(_comparisonKeys, _inputPartNames);
public (WOContext context) {
super(context);
}
public Object invoke() {
return super.invoke();
}
// names of the Web Service input parameters
public NSArray inputPartNames() {
return _inputPartNames;
}
// keyPaths to use with EOKeyValueCoding when deserializing
public NSArray inputPartKeyPaths() {
return _inputPartKeyPaths;
}
// names of the Web Service return parameters
public NSArray outputPartNames() {
return _outputPartNames;
}
// keyPaths to use with EOKeyValueCoding when serializing
public NSArray outputPartKeyPaths() {
return _outputPartKeyPaths;
}
public NSArray comparisonKeys() {
return _comparisonKeys;
}
public WOEnterpriseObjectSerializationStrategy serializationStrategy() {
return new SerializationStrategy(d2wContext());
}
// This is the serialization strategy class used by the
// WOEnterpriseObjectSerializer and WOEnterpriseObjectDeserializer classes
public static class SerializationStrategy extends WORuleSerializationStrategy {
public SerializationStrategy(D2WContext context) {
super(context);
}
public NSArray keyPathsForSerialization(EOEnterpriseObject eo) {
String eoEntityName = eo.entityName();
EOModelGroup group = EOModelGroup.defaultGroup();
EOEntity entity = group.entityNamed(eo.entityName());
EOEntity parent = group.entityNamed("");
while (parent != null) {
if (parent == entity)
return _keyPathsForSerialization;
parent = parent.parentEntity();
}
return NSArray.EmptyArray;
}
public String translatedKeyPath(Object eo, String keyPath) {
String value = (String)_outputPartKeyPathsMap.objectForKey(keyPath);
if (value == null) {
value = (String)_inputPartKeyPathsMap.objectForKey(keyPath);
}
return value;
}
}
}