Revision: 28593
http://sourceforge.net/p/bibdesk/svn/28593
Author: hofman
Date: 2024-01-11 17:37:55 +0000 (Thu, 11 Jan 2024)
Log Message:
-----------
derive binding, element, and response from soap binding request from class name
in convenience initializer. No need for request class.
Modified Paths:
--------------
trunk/bibdesk/BDSKISIGroupServer.h
trunk/bibdesk/BDSKISIGroupServer.m
trunk/bibdesk/BDSKSoapBinding.h
trunk/bibdesk/BDSKSoapBinding.m
trunk/bibdesk/WOKMWSAuthenticateService.h
trunk/bibdesk/WokSearchLiteService.h
trunk/bibdesk/WokSearchService.h
Modified: trunk/bibdesk/BDSKISIGroupServer.h
===================================================================
--- trunk/bibdesk/BDSKISIGroupServer.h 2024-01-11 17:14:10 UTC (rev 28592)
+++ trunk/bibdesk/BDSKISIGroupServer.h 2024-01-11 17:37:55 UTC (rev 28593)
@@ -39,7 +39,7 @@
#import <Cocoa/Cocoa.h>
#import "BDSKSearchGroup.h"
-@class BDSKSoapBindingRequest, BDSKSoapBindingOperation;
+@class BDSKSoapBindingElement, BDSKSoapBindingOperation;
@interface BDSKISIGroupServer : NSObject <BDSKSearchGroupServer>
{
@@ -52,7 +52,7 @@
NSInteger state;
NSString *searchTerm;
NSString *errorMessage;
- BDSKSoapBindingRequest *request;
+ BDSKSoapBindingElement *request;
BDSKSoapBindingOperation *operation;
NSHTTPCookie *sessionCookie;
}
Modified: trunk/bibdesk/BDSKISIGroupServer.m
===================================================================
--- trunk/bibdesk/BDSKISIGroupServer.m 2024-01-11 17:14:10 UTC (rev 28592)
+++ trunk/bibdesk/BDSKISIGroupServer.m 2024-01-11 17:37:55 UTC (rev 28593)
@@ -97,7 +97,7 @@
- (void)searchWithAuthentication;
- (void)search;
- (void)closeSession;
-- (BDSKSoapBindingRequest *)newRequestReturningError:(NSString **)errorString;
+- (BDSKSoapBindingElement *)newRequestReturningError:(NSString **)errorString;
- (BibItem *)newItemFromInfo:(NSDictionary *)pubInfo;
@@ -395,7 +395,7 @@
}
-- (BDSKSoapBindingRequest *)newRequestReturningError:(NSString **)errorString {
+- (BDSKSoapBindingElement *)newRequestReturningError:(NSString **)errorString {
NSString *query = [self searchTerm];
static NSString *operator[5] = {@"", @"citedby:", @"citing:", @"related:",
@"uid:"};
Modified: trunk/bibdesk/BDSKSoapBinding.h
===================================================================
--- trunk/bibdesk/BDSKSoapBinding.h 2024-01-11 17:14:10 UTC (rev 28592)
+++ trunk/bibdesk/BDSKSoapBinding.h 2024-01-11 17:37:55 UTC (rev 28593)
@@ -3,7 +3,6 @@
@class BDSKSoapBindingElement;
@class BDSKSoapBindingResponse;
@class BDSKSoapBindingOperation;
-@class BDSKSoapBindingRequest;
@class BDSKDownload;
@protocol BDSKSoapBindingOperationDelegate <NSObject>
@@ -56,7 +55,7 @@
@property (nonatomic, weak) id<BDSKSoapBindingOperationDelegate> delegate;
@property (nonatomic, strong) BDSKDownload *download;
- (id)initWithBinding:(BDSKSoapBinding *)aBinding
delegate:(id<BDSKSoapBindingOperationDelegate>)aDelegate soapAction:(NSString
*)aSoapAction bodyElements:(NSDictionary *)aBodyElements
responseClasses:(NSDictionary *)aResponseClasses;
-- (id)initWithParameters:(BDSKSoapBindingRequest *)parameters
delegate:(id<BDSKSoapBindingOperationDelegate>)aDelegate;
+- (id)initWithParameters:(BDSKSoapBindingElement *)parameters
delegate:(id<BDSKSoapBindingOperationDelegate>)aDelegate;
- (void)start;
- (void)waitUntilExit;
- (void)cancel;
@@ -80,13 +79,6 @@
- (void)deserializeChildNode:(NSXMLElement *)node;
@end
-@interface BDSKSoapBindingRequest : BDSKSoapBindingElement {
-}
-@property (nonatomic, readonly) NSString *elementName;
-@property (nonatomic, readonly) NSDictionary *responseClasses;
-@property (nonatomic, readonly) BDSKSoapBinding *binding;
-@end
-
@interface BDSKSoapBinding_fault : BDSKSoapBindingElement {
NSString *faultcode;
NSString *faultstring;
Modified: trunk/bibdesk/BDSKSoapBinding.m
===================================================================
--- trunk/bibdesk/BDSKSoapBinding.m 2024-01-11 17:14:10 UTC (rev 28592)
+++ trunk/bibdesk/BDSKSoapBinding.m 2024-01-11 17:37:55 UTC (rev 28593)
@@ -153,11 +153,24 @@
return self;
}
-- (id)initWithParameters:(BDSKSoapBindingRequest *)parameters
delegate:(id<BDSKSoapBindingOperationDelegate>)aDelegate
+- (id)initWithParameters:(BDSKSoapBindingElement *)parameters
delegate:(id<BDSKSoapBindingOperationDelegate>)aDelegate
{
- BDSKSoapBinding *aBinding = [parameters binding];
- NSDictionary *aBodyElements = [NSDictionary
dictionaryWithObjectsAndKeys:parameters, [parameters elementName], nil];
- NSDictionary *aResponseClasses = [parameters responseClasses];
+ // derive the element name, response name and class, and binding from the
class name
+ NSString *name = NSStringFromClass([parameters class]);
+ NSString *elementName = name;
+ NSString *bindingName = nil;
+ NSUInteger idx = [name rangeOfString:@"_"].location;
+ if (idx != NSNotFound) {
+ elementName = [name substringFromIndex:idx + 1];
+ bindingName = [name substringToIndex:idx];
+ }
+ NSString *responseName = [elementName stringByAppendingString:@"Response"];
+ Class bindingClass = NSClassFromString(bindingName);
+ Class responseClass = NSClassFromString([name
stringByAppendingString:@"Response"]);
+
+ BDSKSoapBinding *aBinding = [bindingClass
isSubclassOfClass:[BDSKSoapBinding class]] ? [bindingClass soapBinding] :
[BDSKSoapBinding soapBinding];
+ NSDictionary *aBodyElements = [NSDictionary
dictionaryWithObjectsAndKeys:parameters, elementName, nil];
+ NSDictionary *aResponseClasses = [NSDictionary
dictionaryWithObjectsAndKeys:responseClass, responseName, nil];
return [self initWithBinding:aBinding delegate:aDelegate soapAction:@""
bodyElements:aBodyElements responseClasses:aResponseClasses];
}
- (void)start
@@ -348,37 +361,6 @@
}
@end
-@implementation BDSKSoapBindingRequest
-@dynamic elementName, responseClasses, binding;
-- (NSString *)elementName
-{
- NSString *name = NSStringFromClass([self class]);
- NSUInteger idx = NSMaxRange([name rangeOfString:@"_"]);
- if (idx != NSNotFound) {
- name = [name substringFromIndex:idx];
- }
- return name;
-}
-- (NSDictionary *)responseClasses
-{
- Class responseClass = NSClassFromString([NSStringFromClass([self class])
stringByAppendingString:@"Response"]);
- NSString *responseName = [self.elementName
stringByAppendingString:@"Response"];
- return [NSDictionary dictionaryWithObjectsAndKeys:responseClass,
responseName, nil];
-}
-- (BDSKSoapBinding *)binding
-{
- NSString *name = NSStringFromClass([self class]);
- NSUInteger idx = [name rangeOfString:@"_"].location;
- if (idx != NSNotFound) {
- name = [name substringToIndex:idx];
- Class bindingClass = NSClassFromString(name);
- if ([bindingClass isSubclassOfClass:[BDSKSoapBinding class]])
- return [bindingClass soapBinding];
- }
- return [BDSKSoapBinding soapBinding];
-}
-@end
-
@implementation BDSKSoapBinding_fault
- (id)init
{
Modified: trunk/bibdesk/WOKMWSAuthenticateService.h
===================================================================
--- trunk/bibdesk/WOKMWSAuthenticateService.h 2024-01-11 17:14:10 UTC (rev
28592)
+++ trunk/bibdesk/WOKMWSAuthenticateService.h 2024-01-11 17:37:55 UTC (rev
28593)
@@ -1,7 +1,7 @@
#import <Cocoa/Cocoa.h>
#import "BDSKSoapBinding.h"
-@interface WOKMWSAuthenticateService_authenticate : BDSKSoapBindingRequest
+@interface WOKMWSAuthenticateService_authenticate : BDSKSoapBindingElement
@end
@interface WOKMWSAuthenticateService_authenticateResponse :
BDSKSoapBindingElement {
@@ -10,7 +10,7 @@
@property (nonatomic, strong) NSString * return_;
@end
-@interface WOKMWSAuthenticateService_closeSession : BDSKSoapBindingRequest
+@interface WOKMWSAuthenticateService_closeSession : BDSKSoapBindingElement
@end
@interface WOKMWSAuthenticateService_closeSessionResponse :
BDSKSoapBindingElement
Modified: trunk/bibdesk/WokSearchLiteService.h
===================================================================
--- trunk/bibdesk/WokSearchLiteService.h 2024-01-11 17:14:10 UTC (rev
28592)
+++ trunk/bibdesk/WokSearchLiteService.h 2024-01-11 17:37:55 UTC (rev
28593)
@@ -20,7 +20,7 @@
@property (nonatomic, readonly) NSArray * sortField;
@end
-@interface WokSearchLiteServiceRequest : BDSKSoapBindingRequest {
+@interface WokSearchLiteServiceRequest : BDSKSoapBindingElement {
WokSearchLiteService_retrieveParameters * retrieveParameters;
}
@property (nonatomic, strong) WokSearchLiteService_retrieveParameters *
retrieveParameters;
Modified: trunk/bibdesk/WokSearchService.h
===================================================================
--- trunk/bibdesk/WokSearchService.h 2024-01-11 17:14:10 UTC (rev 28592)
+++ trunk/bibdesk/WokSearchService.h 2024-01-11 17:37:55 UTC (rev 28593)
@@ -44,7 +44,7 @@
@property (nonatomic, readonly) NSArray * option;
@end
-@interface WokSearchServiceRequest : BDSKSoapBindingRequest {
+@interface WokSearchServiceRequest : BDSKSoapBindingElement {
WokSearchService_retrieveParameters * retrieveParameters;
}
@property (nonatomic, strong) WokSearchService_retrieveParameters *
retrieveParameters;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit