actionwebservice/activerecord question

Wasn't sure what subject best described what I need. I have a webservice that returns a struct CustomerRec that contains a customer and the customer's transactions and subscriptions. However, I want to make the transactions and subscriptions optional. It's easy enough to just not fill the subscriptions and transactions members of CustomerRec, but the Customer query still loads the associations which is not necessary if I'm not returning them. If I could just create a class like CustomerWithoutAssociations that did not have the associations and use it in place of Customer that would work, but Customer is already defined as a member of CustomerRec, so that won't work. Can I redefine members of CustomerRec at runtime? Other options?

class CustomerRec < ActionWebService::Struct   member :subscriptions, [Subscription]   member :transactions, [TransactionRec]   member :customer, Customer end

class Customer < ActiveRecord::Base

  has_many :txns, :foreign_key => 'customer_id'   has_many :subscriptions, :foreign_key => 'customer_id' end

Can I redefine members of CustomerRec at runtime?

I forgot that won't work either. the customers member of CustomerRec needs to be Customer, because that's what will be defined in the wsdl.

So far the only way I have thought of to do this is to define additional api methods that return a different struct. But there are 40 base methods, and for each method I want 4 options as follows. That's 120 additional api methods which is kind of crazy.

1. Return customer with no associations 2. Return customer with subscriptions 3. Return customer with transactions 4. Return customer with subscriptions and transactions