Debugging remote GemStone views

This page contains snippets for debugging remote GemStone views.

First in the debugging process we need a proxy to an instance of GtRemotePhlowViewedObject Object subclass: #GtRemotePhlowViewedObject instanceVariableNames: 'object declarativeViewsBySelector' classVariableNames: '' package: 'GToolkit-RemotePhlow-InspectorCore' that wrapps the object we are interested in.

Obtaining a proxy object

We can get this using a dedicated snippet, or by explicitly using the session to evaluate code

inspectorProxy := GtRemotePhlowViewedObject object: 
	GtRemotePhlowDeclarativeTestInspectable new.

Getting informations about views

After we gave a proxy we can get information related to views, like the names of the methods creating the views and the raw data for creating view specifications.

inspectorProxy getDeclarativeViewMethodNames
inspectorProxy getViewsDeclarations

From the proxy object we can also get the view specifications initialized with the remote datasource

inspectorProxy proxyObject declarativeViews

We can also get the title displayed by the inspector

inspectorProxy gtInspectorTitleString

Getting informations about specific views

We can also get information about specific views

List view

Interacting with a proxy for the view specification

listViewProxySpecification := inspectorProxy 
	getDeclarativeViewFor: #gtListFor:.
listViewProxySpecification retrieveItems: 3 fromIndex: 1
listViewProxySpecification retriveSentItemAt: 1

Interacting with a local view specification

listViewLocalSpecification := inspectorProxy
	buildLocalViewSpecificationFor: #gtForwardListFor:
listViewLocalSpecification retrieveItems: 3 fromIndex: 1
listViewLocalSpecification retriveSentItemAt: 1

Forward view

Interacting with a proxy for the view specification

forwardViewProxySpecification := inspectorProxy 
	getDeclarativeViewFor: #gtForwardListFor:
forwardViewProxySpecification retrieveViewSpecificationForForwarding

Interacting with a local view specification

forwardViewLocalSpecification := inspectorProxy
	buildLocalViewSpecificationFor: #gtForwardListFor:
forwardViewLocalSpecification retrieveViewSpecificationForForwarding