Skip to content

Commit

Permalink
ref: Use static sap/ui/core/UIComponent.getRouterFor instead of casting
Browse files Browse the repository at this point in the history
  • Loading branch information
KlattG authored and flovogt committed Oct 2, 2024
1 parent 86a7f7c commit 69216d4
Show file tree
Hide file tree
Showing 24 changed files with 56 additions and 56 deletions.
2 changes: 1 addition & 1 deletion steps/09/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,10 @@ Finally we call the `createContent` hook method of the component. This method cr

```ts
import Control from "sap/ui/core/Control";
import UIComponent from "sap/ui/core/UIComponent";
import XMLView from "sap/ui/core/mvc/XMLView";
import JSONModel from "sap/ui/model/json/JSONModel";
import ResourceModel from "sap/ui/model/resource/ResourceModel";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough
Expand Down
4 changes: 2 additions & 2 deletions steps/10/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,8 +154,8 @@ To apply the settings specified in the app descriptor to the component, we need
Now that the resource model is automatically instantiated based on the configuration in the app descriptor, we can safely remove the corresponding code block from the `init` method in our component controller. This also means that we can remove the import statement for the `ResourceModel` module from `sap/ui/model/resource/ResourceModel`, as it is no longer needed. Additionally, we can remove the `createContent` call since the configuration of the rootView is specified in the app descriptor and therefore makes the implementation in this method unnecessary.

```ts
import UIComponent from "sap/ui/core/UIComponent";
import JSONModel from "sap/ui/model/json/JSONModel";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough
Expand Down Expand Up @@ -250,4 +250,4 @@ We can now delete our `index.ts` file, because our component is now initiated di

[API Reference: `sap.ui.core.ComponentSupport`](https://sdk.openui5.org/api/sap.ui.core.ComponentSupport)

[Make Your App CSP Compliant](https://sdk.openui5.org/topic/1f81a093a9f3433983dcb2ebe11cd4cd.html "CSP stands for Content Security Policy and is a security standard to prevent cross-site scripting or other code injection attacks.")
[Make Your App CSP Compliant](https://sdk.openui5.org/topic/1f81a093a9f3433983dcb2ebe11cd4cd.html "CSP stands for Content Security Policy and is a security standard to prevent cross-site scripting or other code injection attacks.")
4 changes: 2 additions & 2 deletions steps/30/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,7 @@ import { SearchField$SearchEvent } from "sap/m/SearchField";
import Filter from "sap/ui/model/Filter";
import FilterOperator from "sap/ui/model/FilterOperator";
import ListBinding from "sap/ui/model/ListBinding";
import Component from "../Component";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
Expand All @@ -243,7 +243,7 @@ export default class App extends Controller {

onPress(): void {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("detail");
}
};
Expand Down
4 changes: 2 additions & 2 deletions steps/30/webapp/controller/InvoiceList.controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { SearchField$SearchEvent } from "sap/m/SearchField";
import Filter from "sap/ui/model/Filter";
import FilterOperator from "sap/ui/model/FilterOperator";
import ListBinding from "sap/ui/model/ListBinding";
import Component from "../Component";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
Expand Down Expand Up @@ -32,7 +32,7 @@ export default class App extends Controller {
}

onPress(): void {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("detail");
}
};
8 changes: 4 additions & 4 deletions steps/31/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,9 +92,9 @@ import { SearchField$SearchEvent } from "sap/m/SearchField";
import Filter from "sap/ui/model/Filter";
import FilterOperator from "sap/ui/model/FilterOperator";
import ListBinding from "sap/ui/model/ListBinding";
import Component from "../Component";
import Event from "sap/ui/base/Event";
import ObjectListItem from "sap/m/ObjectListItem";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
Expand All @@ -106,7 +106,7 @@ export default class App extends Controller {

onPress(event: Event): void {
const item = event.getSource() as ObjectListItem;
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("detail", {
invoicePath: window.encodeURIComponent(item.getBindingContext("invoice").getPath().substr(1))
});
Expand All @@ -131,7 +131,7 @@ The `bindElement` function is creating a binding context for a OpenUI5 control a

```ts
import Controller from "sap/ui/core/mvc/Controller";
import Component from "../Component";
import UIComponent from "sap/ui/core/UIComponent";
import { Route$PatternMatchedEvent } from "sap/ui/core/routing/Route";

/**
Expand All @@ -140,7 +140,7 @@ import { Route$PatternMatchedEvent } from "sap/ui/core/routing/Route";
export default class Detail extends Controller {

onInit(): void {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.getRoute("detail").attachPatternMatched(this.onObjectMatched, this);
}

Expand Down
4 changes: 2 additions & 2 deletions steps/31/webapp/controller/Detail.controller.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import Controller from "sap/ui/core/mvc/Controller";
import Component from "../Component";
import { Route$PatternMatchedEvent } from "sap/ui/core/routing/Route";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
*/
export default class Detail extends Controller {

onInit(): void {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.getRoute("detail").attachPatternMatched(this.onObjectMatched, this);
}

Expand Down
4 changes: 2 additions & 2 deletions steps/31/webapp/controller/InvoiceList.controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { SearchField$SearchEvent } from "sap/m/SearchField";
import Filter from "sap/ui/model/Filter";
import FilterOperator from "sap/ui/model/FilterOperator";
import ListBinding from "sap/ui/model/ListBinding";
import Component from "../Component";
import UIComponent from "sap/ui/core/UIComponent";
import Event from "sap/ui/base/Event";
import ObjectListItem from "sap/m/ObjectListItem";

Expand Down Expand Up @@ -35,7 +35,7 @@ export default class App extends Controller {

onPress(event: Event): void {
const item = event.getSource() as ObjectListItem;
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("detail", {
invoicePath: window.encodeURIComponent(item.getBindingContext("invoice").getPath().substr(1))
});
Expand Down
6 changes: 3 additions & 3 deletions steps/32/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,17 +34,17 @@ If no navigation has happened before, we get a reference to the router and use t

```ts
import Controller from "sap/ui/core/mvc/Controller";
import Component from "../Component";
import { Route$PatternMatchedEvent } from "sap/ui/core/routing/Route";
import History from "sap/ui/core/routing/History";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
*/
export default class Detail extends Controller {

onInit(): void {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.getRoute("detail").attachPatternMatched(this.onObjectMatched, this);
}

Expand All @@ -62,7 +62,7 @@ export default class Detail extends Controller {
if (previousHash !== undefined) {
window.history.go(-1);
} else {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("overview", {}, true);
}
}
Expand Down
6 changes: 3 additions & 3 deletions steps/32/webapp/controller/Detail.controller.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import Controller from "sap/ui/core/mvc/Controller";
import Component from "../Component";
import { Route$PatternMatchedEvent } from "sap/ui/core/routing/Route";
import History from "sap/ui/core/routing/History";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
*/
export default class Detail extends Controller {

onInit(): void {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.getRoute("detail").attachPatternMatched(this.onObjectMatched, this);
}

Expand All @@ -27,7 +27,7 @@ export default class Detail extends Controller {
if (previousHash !== undefined) {
window.history.go(-1);
} else {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("overview", {}, true);
}
}
Expand Down
4 changes: 2 additions & 2 deletions steps/32/webapp/controller/InvoiceList.controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import { SearchField$SearchEvent } from "sap/m/SearchField";
import Filter from "sap/ui/model/Filter";
import FilterOperator from "sap/ui/model/FilterOperator";
import ListBinding from "sap/ui/model/ListBinding";
import Component from "../Component";
import Event from "sap/ui/base/Event";
import ObjectListItem from "sap/m/ObjectListItem";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
Expand Down Expand Up @@ -35,7 +35,7 @@ export default class App extends Controller {

onPress(event: Event): void {
const item = event.getSource() as ObjectListItem;
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("detail", {
invoicePath: window.encodeURIComponent(item.getBindingContext("invoice").getPath().substr(1))
});
Expand Down
6 changes: 3 additions & 3 deletions steps/33/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -307,21 +307,21 @@ In the `onObjectMatched` method, we call the `reset` method to make it possible

```ts
import Controller from "sap/ui/core/mvc/Controller";
import Component from "../Component";
import { Route$PatternMatchedEvent } from "sap/ui/core/routing/Route";
import History from "sap/ui/core/routing/History";
import MessageToast from "sap/m/MessageToast";
import ProductRating, { ProductRating$ChangeEvent } from "../control/ProductRating";
import ResourceBundle from "sap/base/i18n/ResourceBundle";
import ResourceModel from "sap/ui/model/resource/ResourceModel";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
*/
export default class Detail extends Controller {

onInit(): void {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.getRoute("detail").attachPatternMatched(this.onObjectMatched, this);
}

Expand All @@ -341,7 +341,7 @@ export default class Detail extends Controller {
if (previousHash !== undefined) {
window.history.go(-1);
} else {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("overview", {}, true);
}
}
Expand Down
6 changes: 3 additions & 3 deletions steps/33/webapp/controller/Detail.controller.ts
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
import Controller from "sap/ui/core/mvc/Controller";
import Component from "../Component";
import { Route$PatternMatchedEvent } from "sap/ui/core/routing/Route";
import History from "sap/ui/core/routing/History";
import MessageToast from "sap/m/MessageToast";
import ProductRating, { ProductRating$ChangeEvent } from "../control/ProductRating";
import ResourceBundle from "sap/base/i18n/ResourceBundle";
import ResourceModel from "sap/ui/model/resource/ResourceModel";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
*/
export default class Detail extends Controller {

onInit(): void {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.getRoute("detail").attachPatternMatched(this.onObjectMatched, this);
}

Expand All @@ -33,7 +33,7 @@ export default class Detail extends Controller {
if (previousHash !== undefined) {
window.history.go(-1);
} else {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("overview", {}, true);
}
}
Expand Down
4 changes: 2 additions & 2 deletions steps/33/webapp/controller/InvoiceList.controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import { SearchField$SearchEvent } from "sap/m/SearchField";
import Filter from "sap/ui/model/Filter";
import FilterOperator from "sap/ui/model/FilterOperator";
import ListBinding from "sap/ui/model/ListBinding";
import Component from "../Component";
import Event from "sap/ui/base/Event";
import ObjectListItem from "sap/m/ObjectListItem";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
Expand Down Expand Up @@ -35,7 +35,7 @@ export default class App extends Controller {

onPress(event: Event): void {
const item = event.getSource() as ObjectListItem;
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("detail", {
invoicePath: window.encodeURIComponent(item.getBindingContext("invoice").getPath().substr(1))
});
Expand Down
6 changes: 3 additions & 3 deletions steps/34/webapp/controller/Detail.controller.ts
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
import Controller from "sap/ui/core/mvc/Controller";
import Component from "../Component";
import { Route$PatternMatchedEvent } from "sap/ui/core/routing/Route";
import History from "sap/ui/core/routing/History";
import MessageToast from "sap/m/MessageToast";
import ProductRating, { ProductRating$ChangeEvent } from "../control/ProductRating";
import ResourceBundle from "sap/base/i18n/ResourceBundle";
import ResourceModel from "sap/ui/model/resource/ResourceModel";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
*/
export default class Detail extends Controller {

onInit(): void {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.getRoute("detail").attachPatternMatched(this.onObjectMatched, this);
}

Expand All @@ -33,7 +33,7 @@ export default class Detail extends Controller {
if (previousHash !== undefined) {
window.history.go(-1);
} else {
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("overview", {}, true);
}
}
Expand Down
4 changes: 2 additions & 2 deletions steps/34/webapp/controller/InvoiceList.controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import { SearchField$SearchEvent } from "sap/m/SearchField";
import Filter from "sap/ui/model/Filter";
import FilterOperator from "sap/ui/model/FilterOperator";
import ListBinding from "sap/ui/model/ListBinding";
import Component from "../Component";
import Event from "sap/ui/base/Event";
import ObjectListItem from "sap/m/ObjectListItem";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
Expand Down Expand Up @@ -35,7 +35,7 @@ export default class App extends Controller {

onPress(event: Event): void {
const item = event.getSource() as ObjectListItem;
const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.navTo("detail", {
invoicePath: window.encodeURIComponent(item.getBindingContext("invoice").getPath().substr(1))
});
Expand Down
4 changes: 2 additions & 2 deletions steps/35/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,14 +119,14 @@ In the `Detail` controller we simply add the view model with our currency defini

```ts
import Controller from "sap/ui/core/mvc/Controller";
import Component from "../Component";
import { Route$PatternMatchedEvent } from "sap/ui/core/routing/Route";
import History from "sap/ui/core/routing/History";
import MessageToast from "sap/m/MessageToast";
import ProductRating, { ProductRating$ChangeEvent } from "../control/ProductRating";
import ResourceBundle from "sap/base/i18n/ResourceBundle";
import ResourceModel from "sap/ui/model/resource/ResourceModel";
import JSONModel from "sap/ui/model/json/JSONModel";
import UIComponent from "sap/ui/core/UIComponent";

/**
* @namespace ui5.walkthrough.controller
Expand All @@ -139,7 +139,7 @@ export default class Detail extends Controller {
});
this.getView().setModel(viewModel, "view");

const router = (this.getOwnerComponent() as Component).getRouter();
const router = UIComponent.getRouterFor(this);
router.getRoute("detail").attachPatternMatched(this.onObjectMatched, this);
}
Expand Down
Loading

0 comments on commit 69216d4

Please sign in to comment.