Example usage for org.eclipse.jface.databinding.swt SWTObservables observeText

List of usage examples for org.eclipse.jface.databinding.swt SWTObservables observeText

Introduction

In this page you can find the example usage for org.eclipse.jface.databinding.swt SWTObservables observeText.

Prototype

@Deprecated
public static ISWTObservableValue observeText(Control control, int event) 

Source Link

Document

Returns an observable observing the text attribute of the provided control.

Usage

From source file:com.netxforge.netxstudio.screens.f2.details.NewEditFunctionLinkII.java

License:Open Source License

public void bindNodeLinkSection(EMFDataBindingContext context) {

    IObservableValue node1Observable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtNode1, SWT.Modify));

    IObservableValue node2Observable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtNode2, SWT.Modify));

    IEMFValueProperty linkNode1Property = EMFEditProperties.value(editingService.getEditingDomain(),
            FeaturePath.fromList(OperatorsPackage.Literals.RELATIONSHIP__NODE_ID1_REF,
                    OperatorsPackage.Literals.NODE__NODE_ID));

    IEMFValueProperty linkNode2Property = EMFEditProperties.value(editingService.getEditingDomain(),
            FeaturePath.fromList(OperatorsPackage.Literals.RELATIONSHIP__NODE_ID2_REF,
                    OperatorsPackage.Literals.NODE__NODE_ID));

    context.bindValue(node1Observable, linkNode1Property.observe(relationship), null, null);
    context.bindValue(node2Observable, linkNode2Property.observe(relationship), null, null);
}

From source file:com.netxforge.netxstudio.screens.f2.details.NewEditFunctionLinkII.java

License:Open Source License

public void bindInfoSection(EMFDataBindingContext context) {
    // Binding of name and Description

    IObservableValue nameObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtName, SWT.Modify));

    IEMFValueProperty linkNameProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            OperatorsPackage.Literals.RELATIONSHIP__NAME);

    context.bindValue(nameObservable, linkNameProperty.observe(relationship), null, null);
}

From source file:com.netxforge.netxstudio.screens.f2.details.NewEditFunctionLinkII.java

License:Open Source License

public void bindProtocolSection(EMFDataBindingContext context) {

    IObservableValue protocolObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtProtocol, SWT.Modify));

    IEMFValueProperty protocolProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            FeaturePath.fromList(OperatorsPackage.Literals.RELATIONSHIP__PROTOCOL_REF,
                    ProtocolsPackage.Literals.PROTOCOL__NAME));

    context.bindValue(protocolObservable, protocolProperty.observe(relationship), null, null);
}

From source file:com.netxforge.netxstudio.screens.f2.details.NewEditNode.java

License:Open Source License

public EMFDataBindingContext initDataBindings_() {
    EMFDataBindingContext context = new EMFDataBindingContext();

    // The Node valiation
    EMFUpdateValueStrategy nodeTypeStrategy = ValidationService.getStrategyfactory()
            .strategyAfterGet(new IValidator() {
                public IStatus validate(Object value) {
                    if (value instanceof String) {
                        return new Status(IStatus.OK, ScreensActivator.PLUGIN_ID, "Hello node");
                        // return Status.OK_STATUS;
                    } else {
                        return new Status(IStatus.WARNING, ScreensActivator.PLUGIN_ID,
                                "Original Network Element type is not set, can't add parts");
                    }/*from   w ww .j  a  va 2s .c  o m*/
                }

            });

    IObservableValue nameObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtName, SWT.Modify));

    // Changing the NodeID affects the underlying CDOResource for
    // NetXResource objects.
    // The format is /Node/NetXResource_[NodeID]
    IEMFValueProperty nodeIDProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            OperatorsPackage.Literals.NODE__NODE_ID);
    IObservableValue observeNodeID = nodeIDProperty.observe(node);

    EMFUpdateValueStrategy nodeIDStrategy = new EMFUpdateValueStrategy() {

        @Override
        public IStatus validateBeforeSet(Object value) {
            if (value instanceof String) {

                // Find CDOResources with this NodeID.
                CDOResource cdoResourceForNetXResources = StudioUtils.cdoResourceGet(node);
                if (cdoResourceForNetXResources != null) {
                    System.out.println("Original node is" + cdoResourceForNetXResources.getPath());

                }
            }
            return super.validateBeforeSet(value);
        }
    };

    context.bindValue(nameObservable, observeNodeID, nodeIDStrategy, null);

    IObservableValue nodeTypeObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtNodeType, SWT.Modify));

    IEMFValueProperty originalNodeTypeProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            FeaturePath.fromList(OperatorsPackage.Literals.NODE__ORIGINAL_NODE_TYPE_REF,
                    LibraryPackage.Literals.NODE_TYPE__NAME));

    context.bindValue(nodeTypeObservable, originalNodeTypeProperty.observe(node), null, nodeTypeStrategy);

    IObservableValue roomObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtRoom, SWT.Modify));

    IEMFValueProperty roomProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            OperatorsPackage.Literals.NODE__LOCATION_REF);

    EMFUpdateValueStrategy modelToTargetLocationStrategy = new EMFUpdateValueStrategy();
    modelToTargetLocationStrategy.setConverter(new IConverter() {

        public Object getFromType() {
            return Location.class;
        }

        public Object getToType() {
            return String.class;
        }

        public Object convert(Object fromObject) {
            if (fromObject instanceof Location) {
                return locationName((EObject) fromObject);
            }
            return null;
        }

        String locationName(EObject locationObject) {
            String location = "";
            if (locationObject.eContainer() instanceof Location && locationObject instanceof Location) {
                String parentLocationName = this.locationName(locationObject.eContainer());
                return location = parentLocationName + "-->" + ((Location) locationObject).getName();
            }

            if (locationObject instanceof Location) {
                location += ((Location) locationObject).getName();
            }
            return location;
        }

    });

    context.bindValue(roomObservable, roomProperty.observe(node), null, modelToTargetLocationStrategy);

    // Lifecycle properties.
    IObservableValue dcProposedObservable = new DateChooserComboObservableValue(dcProposed, SWT.Modify);

    IObservableValue dcPlannedObservable = new DateChooserComboObservableValue(dcPlanned, SWT.Modify);

    IObservableValue dcConstructionObservable = new DateChooserComboObservableValue(dcConstruction, SWT.Modify);

    IObservableValue dcInServiceObservable = new DateChooserComboObservableValue(dcInService, SWT.Modify);

    IObservableValue dcOutOfServiceObservable = new DateChooserComboObservableValue(dcOutOfService, SWT.Modify);

    IEMFValueProperty proposedProperty = EMFEditProperties.value(editingService.getEditingDomain(), FeaturePath
            .fromList(OperatorsPackage.Literals.NODE__LIFECYCLE, GenericsPackage.Literals.LIFECYCLE__PROPOSED));

    IEMFValueProperty plannedProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            FeaturePath.fromList(OperatorsPackage.Literals.NODE__LIFECYCLE,
                    GenericsPackage.Literals.LIFECYCLE__PLANNED_DATE));

    IEMFValueProperty constructionProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            FeaturePath.fromList(OperatorsPackage.Literals.NODE__LIFECYCLE,
                    GenericsPackage.Literals.LIFECYCLE__CONSTRUCTION_DATE));

    IEMFValueProperty inServiceProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            FeaturePath.fromList(OperatorsPackage.Literals.NODE__LIFECYCLE,
                    GenericsPackage.Literals.LIFECYCLE__IN_SERVICE_DATE));

    IEMFValueProperty outOfServiceProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            FeaturePath.fromList(OperatorsPackage.Literals.NODE__LIFECYCLE,
                    GenericsPackage.Literals.LIFECYCLE__OUT_OF_SERVICE_DATE));

    EMFUpdateValueStrategy modelToTargetUpdateStrategy = new EMFUpdateValueStrategy();
    modelToTargetUpdateStrategy.setConverter(new IConverter() {

        public Object getFromType() {
            return XMLGregorianCalendar.class;
        }

        public Object getToType() {
            return Date.class;
        }

        public Object convert(Object fromObject) {
            if (fromObject != null) {
                return NonModelUtils.fromXMLDate((XMLGregorianCalendar) fromObject);
            } else {
                return null;
            }
        }
    });

    EMFUpdateValueStrategy targetToModelUpdateStrategy = new EMFUpdateValueStrategy();
    targetToModelUpdateStrategy.setConverter(new IConverter() {

        public Object getFromType() {
            return Date.class;
        }

        public Object getToType() {

            return XMLGregorianCalendar.class;
        }

        public Object convert(Object fromObject) {
            if (fromObject != null) {
                return NonModelUtils.toXMLDate((Date) fromObject);
            } else {
                return null;
            }
        }
    });

    context.bindValue(dcProposedObservable, proposedProperty.observe(node), targetToModelUpdateStrategy,
            modelToTargetUpdateStrategy);

    context.bindValue(dcPlannedObservable, plannedProperty.observe(node), targetToModelUpdateStrategy,
            modelToTargetUpdateStrategy);

    context.bindValue(dcConstructionObservable, constructionProperty.observe(node), targetToModelUpdateStrategy,
            modelToTargetUpdateStrategy);

    context.bindValue(dcInServiceObservable, inServiceProperty.observe(node), targetToModelUpdateStrategy,
            modelToTargetUpdateStrategy);

    context.bindValue(dcOutOfServiceObservable, outOfServiceProperty.observe(node), targetToModelUpdateStrategy,
            modelToTargetUpdateStrategy);

    return context;
}

From source file:com.netxforge.netxstudio.screens.f2.details.NewEditNodeFunction.java

License:Open Source License

private EMFDataBindingContext bindInfoSection(EMFDataBindingContext context) {
    // Binding of name and Description
    IObservableValue nameObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtName, SWT.Modify));

    IObservableValue descriptionObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtDescription, SWT.Modify));

    IEMFValueProperty componentNameProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.COMPONENT__NAME);

    IEMFValueProperty componentDescriptionProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.COMPONENT__DESCRIPTION);

    context.bindValue(nameObservable, componentNameProperty.observe(comp), null, null);

    context.bindValue(descriptionObservable, componentDescriptionProperty.observe(comp), null, null);

    return context;
}

From source file:com.netxforge.netxstudio.screens.f2.details.NewEditNodeType.java

License:Open Source License

public EMFDataBindingContext initDataBindings_() {
    EMFDataBindingContext context = new EMFDataBindingContext();

    // Binding of name and Description
    IObservableValue nameObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtName, SWT.Modify));
    IObservableValue leafObservable = SWTObservables.observeSelection(btnLeafNode);

    IEMFValueProperty nameProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.NODE_TYPE__NAME);
    IEMFValueProperty leafProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.NODE_TYPE__LEAF_NODE);

    context.bindValue(nameObservable, nameProperty.observe(nodeType), null, null);
    context.bindValue(leafObservable, leafProperty.observe(nodeType), null, null);

    final NodeTypeSummary totals = (NodeTypeSummary) stateModel.summary(nodeType);

    this.frmTextNumberOfFunctions.setText(totals.getFunctionCountAsString(), false, false);
    this.frmTextNumberOfEquipments.setText(totals.getEquipmentCountAsString(), false, false);
    this.frmTextNumberOfResources.setText(totals.getResourCountAsString(), false, false);
    return context;
}

From source file:com.netxforge.netxstudio.screens.f2.NewEditParameter.java

License:Open Source License

public EMFDataBindingContext initDataBindings_() {
    EMFDataBindingContext context = new EMFDataBindingContext();

    // text widgets.

    IObservableValue nameObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtName, SWT.Modify));

    IObservableValue expressionNameObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(this.txtExpressionName, SWT.Modify));

    IObservableValue descriptionObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtDescription, SWT.Modify));

    IObservableValue valueObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtValue, SWT.Modify));

    // Strategies to convert the values. 
    EMFUpdateValueStrategy valueModelToTargetStrategy = new EMFUpdateValueStrategy();
    valueModelToTargetStrategy.setConverter(new IConverter() {
        public Object getFromType() {
            return Double.class;
        }//from   w  w  w.  ja  v a2 s. c  o m

        public Object getToType() {
            return String.class;
        }

        public Object convert(Object fromObject) {

            // Use a Decimal formatter, so we don't display Exponent, 
            // which is default for a Double.toString()
            DecimalFormat decimalFormat = new DecimalFormat(NonModelUtils.DEFAULT_VALUE_FORMAT_PATTERN);
            return decimalFormat.format(fromObject);
        }
    });

    EMFUpdateValueStrategy valueTargetToModelStrategy = new EMFUpdateValueStrategy();
    valueTargetToModelStrategy.setConverter(new IConverter() {
        public Object getFromType() {
            return String.class;
        }

        public Object getToType() {
            return Double.class;
        }

        public Object convert(Object fromObject) {
            try {

                String s = (String) fromObject;
                Number parse = DecimalFormat.getInstance().parse(s);
                return parse.doubleValue();
            } catch (NumberFormatException nfe) {
            } catch (ParseException e) {
            }
            return null;
        }
    });

    // Properties
    IEMFValueProperty nameProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.PARAMETER__NAME);

    IEMFValueProperty expressionNameProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.PARAMETER__EXPRESSION_NAME);

    IEMFValueProperty descriptionProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.PARAMETER__DESCRIPTION);

    IEMFValueProperty valueProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.PARAMETER__VALUE);

    context.bindValue(nameObservable, nameProperty.observe(parameter), null, null);
    context.bindValue(expressionNameObservable, expressionNameProperty.observe(parameter), null, null);

    context.bindValue(descriptionObservable, descriptionProperty.observe(parameter), null, null);

    context.bindValue(valueObservable, valueProperty.observe(parameter), valueTargetToModelStrategy,
            valueModelToTargetStrategy);

    return context;
}

From source file:com.netxforge.netxstudio.screens.f2.NewEditResource.java

License:Open Source License

public EMFDataBindingContext initDataBindings_() {
    EMFDataBindingContext context = new EMFDataBindingContext();

    // Widget observables.

    IObservableValue componentTargetObservable = SWTObservables.observeText(this.txtComponent, SWT.Modify);

    IObservableValue nodeTargetObservable = SWTObservables.observeText(this.txtNode, SWT.Modify);

    IObservableValue metricTargetObservable = SWTObservables.observeText(this.txtMetric, SWT.Modify);

    IObservableValue shortNameTargetObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(this.txtShortName, SWT.Modify));
    IObservableValue longNameTargetObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(this.txtLongName, SWT.Modify));
    IObservableValue expressionNameTargetObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(this.txtExpressionName, SWT.Modify));
    IObservableValue unitTargetObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(this.txtUnit, SWT.Modify));

    IEMFValueProperty componentProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.NET_XRESOURCE__COMPONENT_REF);

    IEMFValueProperty metricProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.NET_XRESOURCE__METRIC_REF);

    IEMFValueProperty shortNameProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.BASE_RESOURCE__SHORT_NAME);
    IEMFValueProperty longNameProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.BASE_RESOURCE__LONG_NAME);

    IEMFValueProperty expressionNameProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            LibraryPackage.Literals.BASE_RESOURCE__EXPRESSION_NAME);

    IEMFValueProperty unitProperty = EMFEditProperties.value(editingService.getEditingDomain(), FeaturePath
            .fromList(LibraryPackage.Literals.BASE_RESOURCE__UNIT_REF, LibraryPackage.Literals.UNIT__CODE));

    EMFUpdateValueStrategy nodeToTargetStrategy = new EMFUpdateValueStrategy();
    nodeToTargetStrategy.setConverter(new IConverter() {

        public Object getFromType() {
            return Component.class;
        }/*from   ww  w .  ja  va2 s . c  o  m*/

        public Object getToType() {
            return String.class;
        }

        public Object convert(Object fromObject) {
            Component c = (Component) fromObject;
            NodeType nt = StudioUtils.resolveParentNodeType((EObject) c);
            if (nt != null) {
                Node n = null;
                if ((n = StudioUtils.nodeFor(nt)) != null) {
                    lblNode.setText("NE Instance:");
                    return n.getNodeID();
                } else {
                    lblNode.setText("NE Type:");
                    return nt.getName();
                }
            } else {
                return "";
            }
        }
    });

    EMFUpdateValueStrategy componentToTargetStrategy = new EMFUpdateValueStrategy();
    componentToTargetStrategy.setConverter(new IConverter() {

        public Object getFromType() {
            return Component.class;
        }

        public Object getToType() {
            return String.class;
        }

        public Object convert(Object fromObject) {
            return StudioUtils.componentName((Component) fromObject);
        }

    });

    EMFUpdateValueStrategy metricToTargetStrategy = new EMFUpdateValueStrategy();
    metricToTargetStrategy.setConverter(new IConverter() {

        public Object getFromType() {
            return Metric.class;
        }

        public Object getToType() {
            return String.class;
        }

        public Object convert(Object fromObject) {
            if (fromObject instanceof Metric) {
                return ((Metric) fromObject).getName();
            }
            return fromObject;
        }
    });

    context.bindValue(nodeTargetObservable, componentProperty.observe(res), null, nodeToTargetStrategy);
    context.bindValue(componentTargetObservable, componentProperty.observe(res), null,
            componentToTargetStrategy);

    context.bindValue(shortNameTargetObservable, shortNameProperty.observe(res), null, null);
    context.bindValue(longNameTargetObservable, longNameProperty.observe(res), null, null);
    context.bindValue(expressionNameTargetObservable, expressionNameProperty.observe(res), null, null);

    context.bindValue(metricTargetObservable, metricProperty.observe(res), null, metricToTargetStrategy);

    context.bindValue(unitTargetObservable, unitProperty.observe(res), null, null);

    return context;
}

From source file:com.netxforge.netxstudio.screens.f3.NewEditSite.java

License:Open Source License

public EMFDataBindingContext initDataBindings_() {
    EMFDataBindingContext context = new EMFDataBindingContext();

    IObservableValue nameObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtName, SWT.Modify));
    IObservableValue regionObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtRegion, SWT.Modify));
    IObservableValue areaObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtArea, SWT.Modify));
    IObservableValue cityObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtCity, SWT.Modify));
    IObservableValue streetObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtStreet, SWT.Modify));
    IObservableValue nrObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtNr, SWT.Modify));
    IObservableValue longitudeObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtLongitude, SWT.Modify));
    IObservableValue latitudeObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtLatitude, SWT.Modify));

    IEMFValueProperty nameProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            GeoPackage.Literals.LOCATION__NAME);
    IEMFValueProperty regionProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            GeoPackage.Literals.SITE__REGION);
    IEMFValueProperty areaProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            GeoPackage.Literals.SITE__AREA);
    IEMFValueProperty cityProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            GeoPackage.Literals.SITE__CITY);
    IEMFValueProperty streetProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            GeoPackage.Literals.SITE__SREET);
    IEMFValueProperty nrProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            GeoPackage.Literals.SITE__HOUSENUMBER);
    IEMFValueProperty longitudeProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            GeoPackage.Literals.SITE__LONGITUDE);
    IEMFValueProperty latitudeProperty = EMFEditProperties.value(editingService.getEditingDomain(),
            GeoPackage.Literals.SITE__LATITUDE);

    context.bindValue(nameObservable, nameProperty.observe(site), null, null);
    context.bindValue(regionObservable, regionProperty.observe(site), null, null);
    context.bindValue(areaObservable, areaProperty.observe(site), null, null);
    context.bindValue(cityObservable, cityProperty.observe(site), null, null);
    context.bindValue(streetObservable, streetProperty.observe(site), null, null);
    context.bindValue(nrObservable, nrProperty.observe(site), null, null);
    context.bindValue(longitudeObservable, longitudeProperty.observe(site), null, null);
    context.bindValue(latitudeObservable, latitudeProperty.observe(site), null, null);

    return context;
}

From source file:com.netxforge.netxstudio.screens.f3.NewEditWarehouse.java

License:Open Source License

public EMFDataBindingContext initDataBindings_() {
    EMFDataBindingContext context = new EMFDataBindingContext();

    IObservableValue nameObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtName, SWT.Modify));
    IObservableValue shortNameObservable = SWTObservables.observeDelayedValue(400,
            SWTObservables.observeText(txtDescription, SWT.Modify));

    IEMFValueProperty nameProperty = EMFProperties.value(OperatorsPackage.Literals.WAREHOUSE__NAME);
    IEMFValueProperty shortNameProperty = EMFProperties.value(OperatorsPackage.Literals.WAREHOUSE__DESCRIPTION);

    context.bindValue(nameObservable, nameProperty.observe(warehouse), null, null);
    context.bindValue(shortNameObservable, shortNameProperty.observe(warehouse), null, null);

    return context;
}