code: @Override
      public boolean setAttribute(String name, Object value) {
          boolean success = false;
          beginUpdate();
          try {
              success = so.setAttribute(name, value);
          } catch (Exception ex) {
              log.warn("Exception on so.setAttribute", ex);
          } finally {
              endUpdate();
          }
          if (success) {
              for (ISharedObjectListener listener : serverListeners) {
                  listener.onSharedObjectUpdate(this, name, value);
              }
          }
          return success;
      }
docs: {@inheritDoc}