public void saveContext(Element toElement) {
   for (WorkingContextProvider provider :
       Extensions.getExtensions(WorkingContextProvider.EP_NAME, myProject)) {
     try {
       Element child = new Element(provider.getId());
       provider.saveContext(child);
       toElement.addContent(child);
     } catch (WriteExternalException e) {
       LOG.error(e);
     }
   }
 }
 private void loadContext(Element fromElement) {
   for (WorkingContextProvider provider :
       Extensions.getExtensions(WorkingContextProvider.EP_NAME, myProject)) {
     try {
       Element child = fromElement.getChild(provider.getId());
       if (child != null) {
         provider.loadContext(child);
       }
     } catch (InvalidDataException e) {
       LOG.error(e);
     }
   }
 }
 public void clearContext() {
   for (WorkingContextProvider provider :
       Extensions.getExtensions(WorkingContextProvider.EP_NAME, myProject)) {
     provider.clearContext();
   }
 }