Class visibility in Studio

For a Guidewire-provided Gosu class to be directly visible in Guidewire Studio™, Guidewire must mark that class with the @export annotation. If a class is not marked @export, you might be able to access it in the file structure but not see it in Studio.

If you need to access the class, create a new class and have it extend or subclass the class that you need.

For example, suppose that in PolicyCenter, the application source code defines a CCPCSearchCriteria class. This class is visible in the application file structure as a read-only file in the following location:

PolicyCenter/modules/configuration/gsrc/gw/webservice/pc/pc1000/ccintegration/ccentities

To access the class functionality, first create a new class in the following Studio Classes package:

gw.webservice.pc.ccintegration.v2.ccentities

You then have this class extend CCPCSearchCriteria, for example:

package gw.webservice.pc.ccintegration.v2.ccentities

 uses java.util.Date
uses gw.api.web.product.ProducerCodePickerUtil
uses gw.api.web.producer.ProducerUtil

 class MyClass extends CCPCSearchCriteria {
  var _accountNumber : String as AccountNumber
  var _asOfDate : Date as AsOfDate
  var _nonRenewalCode : String as NonRenewalCode
  var _policyNumber : String as PolicyNumber
  var _policyStatus : String as PolicyStatus
  var _producerCodeString : String as ProducerCodeString
  var _producerString : String as ProducerString
  var _product : String as Product
  var _productCode : String as ProductCode
  var _state : String as State
  var _firstName : String as FirstName
  var _lastName : String as LastName
  var _companyName : String as CompanyName
  var _taxID : String as TaxID

   construct() { }

   override function extractInternalCriteria() : PolicySearchCriteria {
    var criteria = new PolicySearchCriteria()
    criteria.SearchObjectType = SearchObjectType.TC_POLICY
  ...
  }
}