You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2013/09/10 08:55:38 UTC

git commit: ISIS-527: autofocus on first field

Updated Branches:
  refs/heads/master ad6b896fa -> f52e9d941


ISIS-527: autofocus on first field

Also:
* removed ObjectAssociations (filters... moved to ObjectAssociation.Filters)
* removed EvenOrOddCssAttributeFactory, is no-op functionality


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/f52e9d94
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/f52e9d94
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/f52e9d94

Branch: refs/heads/master
Commit: f52e9d9417c927dc12ea3c2619f2a8e801e5d1e1
Parents: ad6b896
Author: Dan Haywood <da...@apache.org>
Authored: Tue Sep 10 07:17:22 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Tue Sep 10 07:17:22 2013 +0100

----------------------------------------------------------------------
 .../actions/ActionParametersFormPanel.java      |  8 +++
 .../collections/EntityCollectionsPanel.java     |  3 -
 .../entity/header/EntityHeaderPanel.java        |  3 -
 .../entity/properties/EntityPropertiesForm.java | 36 +++++++++---
 .../viewer/wicket/ui/pages/PageAbstract.css     |  8 ---
 .../ui/pages/jquery.isis.wicket.viewer.js       |  2 +
 .../util/EvenOrOddCssClassAppenderFactory.java  | 46 ---------------
 .../json/LayoutMetadataReaderFromJson.java      |  3 +-
 .../spec/feature/ObjectAssociations.java        | 61 --------------------
 9 files changed, 40 insertions(+), 130 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/f52e9d94/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
index 6e23883..e04e4cf 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
@@ -55,6 +55,7 @@ import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract;
 import org.apache.isis.viewer.wicket.ui.components.scalars.TextFieldValueModel.ScalarModelProvider;
 import org.apache.isis.viewer.wicket.ui.components.widgets.formcomponent.FormFeedbackPanel;
 import org.apache.isis.viewer.wicket.ui.panels.PanelAbstract;
+import org.apache.isis.viewer.wicket.ui.util.CssClassAppender;
 
 /**
  * {@link PanelAbstract Panel} to capture the arguments for an action
@@ -90,6 +91,8 @@ public class ActionParametersFormPanel extends PanelAbstract<ActionModel> {
         
         private final List<ScalarPanelAbstract> paramPanels = Lists.newArrayList();
 
+        private boolean renderedFirstField;
+
         public ActionParameterForm(final String id, final ActionModel actionModel) {
             super(id, actionModel);
 
@@ -135,6 +138,11 @@ public class ActionParametersFormPanel extends PanelAbstract<ActionModel> {
                     paramPanel.setOutputMarkupId(true);
                     paramPanel.notifyOnChange(this);
                 }
+                
+                if(!renderedFirstField) {
+                    component.add(new CssClassAppender("first-field"));
+                    renderedFirstField = true;
+                }
             }
         }
 

http://git-wip-us.apache.org/repos/asf/isis/blob/f52e9d94/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/collections/EntityCollectionsPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/collections/EntityCollectionsPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/collections/EntityCollectionsPanel.java
index d255445..cef4cb3 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/collections/EntityCollectionsPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/collections/EntityCollectionsPanel.java
@@ -39,7 +39,6 @@ import org.apache.isis.viewer.wicket.model.models.EntityModel;
 import org.apache.isis.viewer.wicket.ui.components.collection.CollectionPanel;
 import org.apache.isis.viewer.wicket.ui.panels.PanelAbstract;
 import org.apache.isis.viewer.wicket.ui.util.CssClassAppender;
-import org.apache.isis.viewer.wicket.ui.util.EvenOrOddCssClassAppenderFactory;
 
 /**
  * {@link PanelAbstract Panel} representing the properties of an entity, as per
@@ -83,14 +82,12 @@ public class EntityCollectionsPanel extends PanelAbstract<EntityModel> {
         final List<ObjectAssociation> associations = visibleCollections(adapter, noSpec);
 
         final RepeatingView collectionRv = new RepeatingView(ID_COLLECTIONS);
-        final EvenOrOddCssClassAppenderFactory eo = new EvenOrOddCssClassAppenderFactory();
         add(collectionRv);
 
         for (final ObjectAssociation association : associations) {
 
             final WebMarkupContainer collectionRvContainer = new WebMarkupContainer(collectionRv.newChildId());
             collectionRv.add(collectionRvContainer);
-            collectionRvContainer.add(eo.nextClass());
             
             addCollectionToForm(entityModel, association, collectionRvContainer);
         }

http://git-wip-us.apache.org/repos/asf/isis/blob/f52e9d94/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/header/EntityHeaderPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/header/EntityHeaderPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/header/EntityHeaderPanel.java
index fc266c5..11fc06d 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/header/EntityHeaderPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/header/EntityHeaderPanel.java
@@ -21,7 +21,6 @@ package org.apache.isis.viewer.wicket.ui.components.entity.header;
 
 import java.util.List;
 
-import com.google.common.base.Function;
 import com.google.common.base.Functions;
 import com.google.common.base.Strings;
 import com.google.common.collect.Lists;
@@ -33,7 +32,6 @@ import org.apache.isis.applib.annotation.Where;
 import org.apache.isis.applib.filter.Filter;
 import org.apache.isis.applib.filter.Filters;
 import org.apache.isis.core.commons.lang.StringFunctions;
-import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet;
 import org.apache.isis.core.metamodel.spec.ActionType;
@@ -41,7 +39,6 @@ import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.metamodel.spec.feature.Contributed;
 import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
 import org.apache.isis.core.metamodel.spec.feature.ObjectAssociation;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAssociations;
 import org.apache.isis.core.runtime.system.DeploymentType;
 import org.apache.isis.core.runtime.system.context.IsisContext;
 import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;

http://git-wip-us.apache.org/repos/asf/isis/blob/f52e9d94/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java
index 181b11f..b29a9b7 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java
@@ -25,6 +25,8 @@ import org.apache.wicket.Component;
 import org.apache.wicket.MarkupContainer;
 import org.apache.wicket.Session;
 import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
+import org.apache.wicket.ajax.attributes.IAjaxCallListener;
 import org.apache.wicket.ajax.markup.html.form.AjaxButton;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.basic.Label;
@@ -55,7 +57,6 @@ import org.apache.isis.core.metamodel.spec.ObjectSpecifications;
 import org.apache.isis.core.metamodel.spec.ObjectSpecifications.MemberGroupLayoutHint;
 import org.apache.isis.core.metamodel.spec.feature.Contributed;
 import org.apache.isis.core.metamodel.spec.feature.ObjectAssociation;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAssociations;
 import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
 import org.apache.isis.core.runtime.memento.Memento;
 import org.apache.isis.core.runtime.system.context.IsisContext;
@@ -71,7 +72,6 @@ import org.apache.isis.viewer.wicket.ui.panels.ButtonWithPreValidateHook;
 import org.apache.isis.viewer.wicket.ui.panels.FormAbstract;
 import org.apache.isis.viewer.wicket.ui.util.Components;
 import org.apache.isis.viewer.wicket.ui.util.CssClassAppender;
-import org.apache.isis.viewer.wicket.ui.util.EvenOrOddCssClassAppenderFactory;
 
 class EntityPropertiesForm extends FormAbstract<ObjectAdapter> {
 
@@ -99,6 +99,8 @@ class EntityPropertiesForm extends FormAbstract<ObjectAdapter> {
     private Button okButton;
     private Button cancelButton;
     private FeedbackPanel feedback;
+    
+    private boolean renderedFirstField;
 
     public EntityPropertiesForm(final String id, final EntityModel entityModel, final Component owningPanel) {
         super(id, entityModel);
@@ -119,6 +121,8 @@ class EntityPropertiesForm extends FormAbstract<ObjectAdapter> {
         final EntityModel entityModel = (EntityModel) getModel();
         final ColumnSpans columnSpans = entityModel.getObject().getSpecification().getFacet(MemberGroupLayoutFacet.class).getColumnSpans();
 
+        renderedFirstField = false;
+        
         // left column
         MarkupContainer leftColumn = new WebMarkupContainer(ID_LEFT_COLUMN);
         add(leftColumn);
@@ -187,7 +191,7 @@ class EntityPropertiesForm extends FormAbstract<ObjectAdapter> {
         final RepeatingView memberGroupRv = new RepeatingView(ID_MEMBER_GROUP);
         markupContainer.add(memberGroupRv);
 
-        Map<String, List<ObjectAssociation>> associationsByGroup = ObjectAssociations.groupByMemberOrderName(associations);
+        Map<String, List<ObjectAssociation>> associationsByGroup = ObjectAssociation.Util.groupByMemberOrderName(associations);
         
         final List<String> groupNames = ObjectSpecifications.orderByMemberGroups(objSpec, associationsByGroup.keySet(), hint);
         
@@ -202,7 +206,6 @@ class EntityPropertiesForm extends FormAbstract<ObjectAdapter> {
             memberGroupRvContainer.add(new Label(ID_MEMBER_GROUP_NAME, groupName));
 
             final RepeatingView propertyRv = new RepeatingView(ID_PROPERTIES);
-            final EvenOrOddCssClassAppenderFactory eo = new EvenOrOddCssClassAppenderFactory();
             memberGroupRvContainer.add(propertyRv);
 
             @SuppressWarnings("unused")
@@ -210,7 +213,6 @@ class EntityPropertiesForm extends FormAbstract<ObjectAdapter> {
             for (final ObjectAssociation association : associationsInGroup) {
                 final WebMarkupContainer propertyRvContainer = new WebMarkupContainer(propertyRv.newChildId());
                 propertyRv.add(propertyRvContainer);
-                propertyRvContainer.add(eo.nextClass());
                 addPropertyToForm(entityModel, association, propertyRvContainer);
             }
         }
@@ -226,7 +228,12 @@ class EntityPropertiesForm extends FormAbstract<ObjectAdapter> {
 		final PropertyMemento pm = new PropertyMemento(otoa);
 
 		final ScalarModel scalarModel = entityModel.getPropertyModel(pm);
-		getComponentFactoryRegistry().addOrReplaceComponent(container, ID_PROPERTY, ComponentType.SCALAR_NAME_AND_VALUE, scalarModel);
+		final Component component = getComponentFactoryRegistry().addOrReplaceComponent(container, ID_PROPERTY, ComponentType.SCALAR_NAME_AND_VALUE, scalarModel);
+		
+		if(!renderedFirstField) {
+		    component.add(new CssClassAppender("first-field"));
+		    renderedFirstField = true;
+		}
 	}
 
     private List<ObjectAssociation> visibleProperties(final ObjectAdapter adapter, final ObjectSpecification objSpec, Where where) {
@@ -267,8 +274,23 @@ class EntityPropertiesForm extends FormAbstract<ObjectAdapter> {
             protected void onError(final AjaxRequestTarget target, final Form<?> form) {
                 toEditMode(target);
             }
-            
+        
+            @Override
+            protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
+                super.updateAjaxAttributes(attributes);
+                attributes.getAjaxCallListeners().add(new org.apache.wicket.ajax.attributes.AjaxCallListener(){
+
+                    private static final long serialVersionUID = 1L;
+
+                    @Override
+                    public CharSequence getSuccessHandler(Component component) {
+                        return "$('.first-field input').focus();";
+                    }
+                });
+            }
         };
+        
+        
         markupContainer.add(editButton);
 
         

http://git-wip-us.apache.org/repos/asf/isis/blob/f52e9d94/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.css
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.css b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.css
index 61c637b..c581f0c 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.css
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.css
@@ -532,10 +532,6 @@ table.contents th {
 
 
 
-.even, .odd {
-	background-color: #ffffff; 
-}
-
 
 .property, .propertyOrCollection, .parameter {
 	clear: both;
@@ -594,10 +590,6 @@ table.contents th {
 .scalarValue {
 }
 
-div.odd, div.even {
-	display: block;
-}
-
 div.scalarPanel {
 	display: inline;
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/f52e9d94/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/jquery.isis.wicket.viewer.js
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/jquery.isis.wicket.viewer.js b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/jquery.isis.wicket.viewer.js
index ce6e0e6..4367501 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/jquery.isis.wicket.viewer.js
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/jquery.isis.wicket.viewer.js
@@ -24,4 +24,6 @@ $(document).ready(function() {
     $('.buttons .okButton:not(.noVeil)').click(showVeil);
     $('.buttons .ok:not(.noVeil)').click(showVeil);
     $('.cssSubMenuItemsPanel .cssSubMenuItem a:not(.noVeil)').click(showVeil);
+    
+    $('.first-field input').focus();
 });

http://git-wip-us.apache.org/repos/asf/isis/blob/f52e9d94/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/util/EvenOrOddCssClassAppenderFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/util/EvenOrOddCssClassAppenderFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/util/EvenOrOddCssClassAppenderFactory.java
deleted file mode 100644
index b11a4eb..0000000
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/util/EvenOrOddCssClassAppenderFactory.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.viewer.wicket.ui.util;
-
-import org.apache.wicket.behavior.Behavior;
-
-
-public class EvenOrOddCssClassAppenderFactory {
-
-    private enum EvenOrOdd {
-        EVEN, ODD;
-        private EvenOrOddCssClassAppenderFactory.EvenOrOdd next() {
-            return this == EVEN ? ODD : EVEN;
-        }
-
-        private String className() {
-            return this.name().toLowerCase();
-        }
-    }
-
-    private EvenOrOddCssClassAppenderFactory.EvenOrOdd eo = EvenOrOdd.EVEN;
-
-    //public IBehavior nextClass() {
-    public Behavior nextClass() {
-        final String className = eo.className();
-        eo = eo.next();
-        return new CssClassAppender(className);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/f52e9d94/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layoutmetadata/json/LayoutMetadataReaderFromJson.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layoutmetadata/json/LayoutMetadataReaderFromJson.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layoutmetadata/json/LayoutMetadataReaderFromJson.java
index 1295926..b7ec5e3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layoutmetadata/json/LayoutMetadataReaderFromJson.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layoutmetadata/json/LayoutMetadataReaderFromJson.java
@@ -54,7 +54,6 @@ import org.apache.isis.core.metamodel.spec.feature.Contributed;
 import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
 import org.apache.isis.core.metamodel.spec.feature.ObjectActions;
 import org.apache.isis.core.metamodel.spec.feature.ObjectAssociation;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAssociations;
 
 public class LayoutMetadataReaderFromJson implements LayoutMetadataReader {
 
@@ -224,7 +223,7 @@ public class LayoutMetadataReaderFromJson implements LayoutMetadataReader {
 
     private static void updateColumnMemberGroups(ObjectSpecification objectSpec, final MemberGroupLayoutHint hint, ColumnRepr columnRepr, Set<String> actionIdsForAssociations) {
         final List<ObjectAssociation> objectAssociations = propertiesOf(objectSpec);
-        final Map<String, List<ObjectAssociation>> associationsByGroup = ObjectAssociations.groupByMemberOrderName(objectAssociations);
+        final Map<String, List<ObjectAssociation>> associationsByGroup = ObjectAssociation.Util.groupByMemberOrderName(objectAssociations);
         
         final List<String> groupNames = ObjectSpecifications.orderByMemberGroups(objectSpec, associationsByGroup.keySet(), hint);
         

http://git-wip-us.apache.org/repos/asf/isis/blob/f52e9d94/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAssociations.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAssociations.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAssociations.java
deleted file mode 100644
index fae9fb5..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAssociations.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.core.metamodel.spec.feature;
-
-import java.util.List;
-import java.util.Map;
-
-import com.google.common.base.Function;
-import com.google.common.base.Predicate;
-
-import org.apache.isis.core.metamodel.spec.ObjectSpecification;
-
-public final class ObjectAssociations {
-
-    private ObjectAssociations() {
-    }
-
-    @Deprecated
-    public static Map<String, List<ObjectAssociation>> groupByMemberOrderName(List<ObjectAssociation> associations) {
-        return ObjectAssociation.Util.groupByMemberOrderName(associations);
-    }
-
-    @Deprecated
-    public static Function<ObjectAssociation, String> toName() {
-        return ObjectAssociation.Functions.toName();
-    }
-
-    @Deprecated
-    public static Function<ObjectAssociation, String> toId() {
-        return ObjectAssociation.Functions.toId();
-    }
-
-    @Deprecated
-    public static Predicate<ObjectAssociation> being(final Contributed contributed) {
-        return ObjectAssociation.Predicates.being(contributed);
-    }
-
-    @Deprecated
-    public static Function<String, OneToOneAssociation> fromId(final ObjectSpecification objSpec) {
-        return OneToOneAssociation.Functions.fromId(objSpec);
-    }
-
-
-}