public Class<F> getFocusClass() throws SchemaException { if (focusClass != null) { return focusClass; } if (!hasApplicablePolicy()) { throw new IllegalStateException("synchronizationPolicy is null"); } QName focusTypeQName = objectSynchronization.getFocusType(); if (focusTypeQName == null) { this.focusClass = (Class<F>) UserType.class; return focusClass; } ObjectTypes objectType = ObjectTypes.getObjectTypeFromTypeQName(focusTypeQName); if (objectType == null) { throw new SchemaException("Unknown focus type " + focusTypeQName + " in synchronization policy in " + resource); } this.focusClass = (Class<F>) objectType.getClassDefinition(); return focusClass; }
QName focusTypeQName = objSyncType.getFocusType(); if (focusTypeQName == null) { if (type != UserType.class) {
ObjectSynchronizationType def = ResourceTypeUtil.findObjectSynchronization(rctx.resource, rctx.kind, rctx.intent); if (def != null) { QName focusType = def.getFocusType() != null ? def.getFocusType() : UserType.COMPLEX_TYPE; PrismObjectDefinition<Objectable> objdef = rctx.prismContext.getSchemaRegistry().findObjectDefinitionByType(focusType); if (objdef != null && objdef.getCompileTimeClass() != null && FocusType.class.isAssignableFrom(objdef.getCompileTimeClass())) {
clone.focusType = ((this.focusType == null)?null:this.getFocusType());
this.focusType = ((o.focusType == null)?null:o.getFocusType());
lhsFocusType = this.getFocusType(); QName rhsFocusType; rhsFocusType = that.getFocusType(); if (!strategy.equals(LocatorUtils.property(thisLocator, "focusType", lhsFocusType), LocatorUtils.property(thatLocator, "focusType", rhsFocusType), lhsFocusType, rhsFocusType)) { return false;
theFocusType = this.getFocusType(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "focusType", theFocusType), currentHashCode, theFocusType);