ThingWorx Edge Java SDK > Working with Things
  
Working with Things
A remote thing on the ThingWorx platform and a virtual thing on a remote asset are related to each other by the name assigned to them. A virtual thing collects and stores the values of its properties. It can then forward these values to its corresponding remote thing on the ThingWorx platform.
To use a virtual thing in an application extend the VirtualThing class. The following code would go in a new file, for example, SimpleThing.java:
public class SimpleThing extends VirtualThing {

public SimpleThing(String name, String description, ConnectedThingClient client) {
super(name, description, client);
}

}
Once you have constructed a VirtualThing, you can bind it to a client. From the SimpleThingClient.java source file:
//
// Create a VirtualThing and bind it to the client
///////////////////////////////////////////////////////////////

// Create a new VirtualThing. The name parameter should match the
// name of a remote thing on the ThingWorx platform.
SimpleThing thing = new SimpleThing("Simple1", "A basic virtual thing", client);

// Bind the VirtualThing to the client. This bind method tells the
// platform that the remote thing 'Simple1' is now connected and that
// it is ready to receive requests.
client.bindThing(thing);
The remote thing called SimpleThing 1 on the ThingWorx platform should now have its isConnected property set to true and its lastConnection property updated to the current time.
You can verify that it is connected by requesting the current value of the isConnected property, using the REST API of the ThingWorx platform. Using a REST client such as Postman, set the HTTP method GET and supply the following URL, substituting the domain name of your ThingWorx platform and its port instead of yourserver.com:
https://yourserver.com/Thingworx/Things/Simple1/Properties/isConnected
Set the Accept header to application/json, and run the call to see if the value of isConnected is true.