public Object copyTo(ObjectLocator locator, Object target, CopyStrategy2 strategy) { final Object draftCopy = ((target == null)?createNewInstance():target); super.copyTo(locator, draftCopy, strategy); if (draftCopy instanceof UserNamespaceAuthorizationChangeNotificationEvent) { final UserNamespaceAuthorizationChangeNotificationEvent copy = ((UserNamespaceAuthorizationChangeNotificationEvent) draftCopy); { Boolean userNamespaceAuthorizationKeyShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.userNamespaceAuthorizationKey!= null)); if (userNamespaceAuthorizationKeyShouldBeCopiedAndSet == Boolean.TRUE) { UserNamespaceAuthorizationKey sourceUserNamespaceAuthorizationKey; sourceUserNamespaceAuthorizationKey = this.getUserNamespaceAuthorizationKey(); UserNamespaceAuthorizationKey copyUserNamespaceAuthorizationKey = ((UserNamespaceAuthorizationKey) strategy.copy(LocatorUtils.property(locator, "userNamespaceAuthorizationKey", sourceUserNamespaceAuthorizationKey), sourceUserNamespaceAuthorizationKey, (this.userNamespaceAuthorizationKey!= null))); copy.setUserNamespaceAuthorizationKey(copyUserNamespaceAuthorizationKey); } else { if (userNamespaceAuthorizationKeyShouldBeCopiedAndSet == Boolean.FALSE) { copy.userNamespaceAuthorizationKey = null; } } } } return draftCopy; }