Skip to content

Commit

Permalink
[ReadMe] updated readMe file for ImportExport-LayeredNavigation modules
Browse files Browse the repository at this point in the history
  • Loading branch information
vlmed committed Apr 21, 2021
1 parent 9d1fe17 commit b01435e
Show file tree
Hide file tree
Showing 5 changed files with 387 additions and 21 deletions.
80 changes: 79 additions & 1 deletion app/code/Magento/ImportExport/README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,80 @@
Magento_ImportExport module provides a framework and basic functionality for importing/exporting various entities in Magento.
# Magento_ImportExport module

This module provides a framework and basic functionality for importing/exporting various entities in Magento.
It can be disabled and in such case all dependent import/export functionality (products, customers, orders etc.) will be disabled in Magento.

## Installation

The Magento_ImportExport module creates the following tables in the database:
- `importexport_importdata`
- `import_history`

For information about a module installation in Magento 2, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html).

## Structure

`Files/` - the directory that contains sample import files.

For information about a typical file structure of a module in Magento 2, see [Module file structure](http://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html#module-file-structure).

## Extensibility

Extension developers can interact with the Magento_ImportExport module. For more information about the Magento extension mechanism, see [Magento plugins](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/plugins.html).

[The Magento dependency injection mechanism](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/depend-inj.html) enables you to override the functionality of the Magento_ImportExport module.

### Layouts

This module introduces the following layouts in the `view/frontend/layout` directory:

- `adminhtml_export_getfilter`
- `adminhtml_export_index`
- `adminhtml_history_grid_block`
- `adminhtml_history_index`
- `adminhtml_import_busy`
- `adminhtml_import_index`
- `adminhtml_import_start`
- `adminhtml_import_validate`

For more information about a layout in Magento 2, see the [Layout documentation](http://devdocs.magento.com/guides/v2.4/frontend-dev-guide/layouts/layout-overview.html).

### UI components

You can extend an export updates using the configuration files located in the `view/adminhtml/ui_component` directory:

- `export_grid`

For information about a UI component in Magento 2, see [Overview of UI components](http://devdocs.magento.com/guides/v2.4/ui_comp_guide/bk-ui_comps.html).

### Public APIs

- `Magento\ImportExport\Api\Data\ExportInfoInterface`
- export data

- `\Magento\ImportExport\Api\ExportManagementInterface`:
- get export data

For information about a public API in Magento 2, see [Public interfaces & APIs](http://devdocs.magento.com/guides/v2.4/extension-dev-guide/api-concepts.html).

## Additional information

#### Message Queue Consumer

- `exportProcessor` - consumer to run export process

[Learn how to manage Message Queues](https://devdocs.magento.com/guides/v2.4/config-guide/mq/manage-message-queues.html).

#### Create custom import entity

1. Declare the new import entity in `etc/import.xml`
2. Create an import model

#### Create custom export entity

1. Declare the new import entity in `etc/export.xml`
2. Create an export model

You can get more information about import/export processes in magento at the articles:
- [Create custom import entity](https://devdocs.magento.com/guides/v2.4/ext-best-practices/tutorials/custom-import-entity.html)
- [Import](https://docs.magento.com/user-guide/system/data-import.html)
- [Export](https://docs.magento.com/user-guide/system/data-export.html)
120 changes: 111 additions & 9 deletions app/code/Magento/Indexer/README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,114 @@
## Overview
Magento_Indexer module is a base of Magento Indexing functionality.
# Magento_Indexer module

This module provides Magento Indexing functionality.
It allows:
- read indexers configuration,
- represent indexers in admin,
- regenerate indexes by cron schedule,
- regenerate indexes from console,
- view and reset indexer state from console,
- read indexers configuration
- represent indexers in admin
- regenerate indexes by cron schedule
- regenerate indexes from console
- view and reset indexer state from console
- view and set indexer mode from console

There are 2 modes of the Indexers: "Update on save" and "Update by schedule".
Manual full reindex can be performed via console by running `php -f bin/magento indexer:reindex` console command.
## Installation

The Magento_Indexer module is one of the base Magento 2 modules. You cannot disable or uninstall this module.

This module is dependent on the following modules:

- `Magento_Store`
- `Magento_AdminNotification`

The Magento_Indexer module creates the following tables in the database:
- `indexer_state`
- `mview_state`

For information about a module installation in Magento 2, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html).

## Structure

`App/` - the directory that contains launch application entry point.

For information about a typical file structure of a module in Magento 2, see [Module file structure](http://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html#module-file-structure).

## Extensibility

Extension developers can interact with the Magento_Indexer module. For more information about the Magento extension mechanism, see [Magento plugins](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/plugins.html).

[The Magento dependency injection mechanism](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/depend-inj.html) enables you to override the functionality of the Magento_Indexer module.

### Events

The module dispatches the following events:

#### Model

- `clean_cache_by_tags` event in the `\Magento\Indexer\Model\Indexer\CacheCleaner::cleanCache` method. Parameters:
- `object` is a `$this->cacheContext` object (`Magento\Framework\Indexer\CacheContext` class)

#### Plugin

- `clean_cache_after_reindex` event in the `\Magento\Indexer\Model\Processor\CleanCache::afterUpdateMview` method. Parameters:
- `object` is a `$this->context` object (`Magento\Framework\Indexer\CacheContext` class)

- `clean_cache_by_tags` event in the `\Magento\Indexer\Model\Processor\CleanCache::afterReindexAllInvalid` method. Parameters:
- `object` is a `$this->context` object (`Magento\Framework\Indexer\CacheContext` class)

For information about an event in Magento 2, see [Events and observers](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/events-and-observers.html#events).

### Layouts

This module introduces the following layouts in the `view/adminhtml/layout` directory:
- `indexer_indexer_list`
- `indexer_indexer_list_grid`

For more information about layouts in Magento 2, see the [Layout documentation](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/layout-overview.html).

## Additional information

### Magento indexers

List of Magento default indexers:
- `design_config_grid` - Design Config Grid
- `customer_grid` - Customer Grid
- `catalog_category_product` - Category Products
- `catalog_product_category` - Product Categories
- `catalogrule_rule` - Catalog Rule Product
- `catalog_product_attribute` - Product EAV
- `catalogrule_product` - Catalog Product Rule
- `cataloginventory_stock` - Stock
- `catalog_product_price` - Product Price
- `catalogsearch_fulltext` - Catalog Search

### Indexer modes

There are 2 modes of the Indexers:

- Update on Save - index tables are updated immediately after the dictionary data is changed
- Update by Schedule - index tables are updated by cron job according to the configured schedule

### Console commands

Magento_Indexers provides console commands:
- `bin/magento indexer:info` - view a list of all indexers
- `bin/magento indexer:status [indexer]` - view index status
- `bin/magento indexer:info` - view list all indexers
- `bin/magento indexer:reindex [indexer]` - run reindex
- `bin/magento indexer:reset [indexer]` - reset indexers
- `bin/magento indexer:show-mode [indexer]` - view the current indexer configuration
- `bin/magento indexer:set-mode {realtime|schedule} [indexer]` - specify the indexer configuration

### Cron options

Cron group configuration can be set at `etc/crontab.xml`:
- `indexer_reindex_all_invalid` - regenerate indexes for all invalid indexers
- `indexer_update_all_views` - update indexer views
- `indexer_clean_all_changelogs` - clean indexer view changelogs

[Learn how to configure and run cron in Magento.](http://devdocs.magento.com/guides/v2.4/config-guide/cli/config-cli-subcommands-cron.html).

More information can get at articles:
- [Learn more about indexing](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/indexing.html)
- [Learn more about Indexr optimization](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/indexer-batch.html)
- [Learn more how to add custom indexer](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/indexing-custom.html)
- [Learn how to manage indexers](https://devdocs.magento.com/guides/v2.4/config-guide/cli/config-cli-subcommands-index.html)
- [Learn more about Index Management](https://docs.magento.com/user-guide/system/index-management.html)
67 changes: 59 additions & 8 deletions app/code/Magento/InstantPurchase/README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,62 @@
# Magento_InstantPurchase module
## Magento_InstantPurchase module

Instant Purchase feature allows the Customer to place the order in seconds without going through full checkout. Once clicked, system places the order using default shipping and billing addresses and stored payment method. Order is placed and customer gets confirmation message in notification area.
This module allows the Customer to place the order in seconds without going through full checkout. Once clicked, system places the order using default shipping and billing addresses and stored payment method. Order is placed and customer gets confirmation message in notification area.

Prerequisites to display the Instant Purchase button:
## Installation

1. Instant purchase enabled for a store at `Store / Configurations / Sales / Sales / Instant Purchase`
2. Customer is logged in
3. Customer has default shipping and billing address defined
4. Customer has valid stored payment method with instant purchase support
For information about a module installation in Magento 2, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html).

## Structure

In addition to [a typical file structure for a Magento 2 module](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html) `PaymentMethodsIntegration` directory contains interfaces and basic implementation of integration vault payment method to the instant purchase.
`PaymentMethodsIntegration` - directory contains interfaces and basic implementation of integration vault payment method to the instant purchase.

For information about a typical file structure of a module in Magento 2, see [Module file structure](http://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html#module-file-structure).

## Extensibility

Extension developers can interact with the Magento_InstantPurchase module. For more information about the Magento extension mechanism, see [Magento plugins](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/plugins.html).

[The Magento dependency injection mechanism](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/depend-inj.html) enables you to override the functionality of the Magento_InstantPurchase module.

### Layouts

This module introduces the following layouts in the `view/frontend/layout` directory:
- `catalog_product_view`
- `catalog_product_view_type_bundle`

For more information about layouts in Magento 2, see the [Layout documentation](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/layout-overview.html).

### Public APIs

- `\Magento\InstantPurchase\Model\BillingAddressChoose\BillingAddressChooserInterface`
- choose billing address for a customer if available

- `\Magento\InstantPurchase\Model\PaymentMethodChoose\PaymentTokenChooserInterface`
- choose one of the stored payment methods for a customer if available

- `\Magento\InstantPurchase\Model\ShippingAddressChoose\ShippingAddressChooserInterface`
- choose shipping address for a customer if available

- `\Magento\InstantPurchase\Model\ShippingMethodChoose\DeferredShippingMethodChooserInterface`
- choose shipping method for a quote address

- `\Magento\InstantPurchase\Model\ShippingMethodChoose\ShippingMethodChooserInterface`
- choose shipping method for customer address if available

- `\Magento\InstantPurchase\Model\InstantPurchaseInterface`
- detects instant purchase options for a customer in a store

- `\Magento\InstantPurchase\PaymentMethodIntegration\AvailabilityCheckerInterface`
- checks if payment method may be used for instant purchase

- `\Magento\InstantPurchase\PaymentMethodIntegration\PaymentAdditionalInformationProviderInterface`
- provides additional information part specific for payment method

- `\Magento\InstantPurchase\PaymentMethodIntegration\PaymentTokenFormatterInterface`
- provides mechanism to create string presentation of token for payment method

For information about a public API in Magento 2, see [Public interfaces & APIs](http://devdocs.magento.com/guides/v2.4/extension-dev-guide/api-concepts.html).

### Instant purchase customization

Almost all aspects of instant purchase may be customized. See comments to classes and interfaces marked with `@api` tag.
Expand Down Expand Up @@ -49,6 +91,15 @@ Basic implementation is a good start point but it's recommended to provide own i

## Additional information

#Prerequisites to display the Instant Purchase button

1. Instant purchase enabled for a store at `Store / Configurations / Sales / Sales / Instant Purchase`
2. Customer is logged in
3. Customer has default shipping and billing address defined
4. Customer has valid stored payment method with instant purchase support

[Learn more about Instant Purchase](https://docs.magento.com/user-guide/sales/checkout-instant-purchase.html).

### Backward incompatible changes

The `Magento_InstantPurchase` module does not introduce backward incompatible changes.
Expand Down
95 changes: 93 additions & 2 deletions app/code/Magento/Integration/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,97 @@
# Integration
# Magento_Integration module

**Integration** enables third-party services to call the Web API by using access tokens.
This module enables third-party services to call the Web API by using access tokens.
It provides an admin UI that enables manual creation of integrations. Extensions can also provide a configuration
file so that an integration can be automatically pre-configured. The module also contains the data
model for request and access token management.

## Installation

Before installing this module, note that the Magento_Integration is dependent on the following modules:
- `Magento_Store`
- `Magento_User`
- `Magento_Security`

The following modules depend on this module:
- `Magento_Analytics`
- `Magento_Webapi`

The Magento_Integration module creates the following tables in the database:
- `oauth_consumer`
- `oauth_token`
- `oauth_nonce`
- `integration`
- `oauth_token_request_log`

For information about a module installation in Magento 2, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html).

## Extensibility

Extension developers can interact with the Magento_Integration module. For more information about the Magento extension mechanism, see [Magento plugins](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/plugins.html).

[The Magento dependency injection mechanism](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/depend-inj.html) enables you to override the functionality of the Magento_Integration module.

### Events

The module dispatches the following events:

#### Model
- `customer_login` event in the `\Magento\Integration\Model\CustomerTokenService::createCustomerAccessToken` method. Parameters:
- `customer` is a `$customerDataObject` object (`\Magento\Customer\Api\Data\CustomerInterface` class)

For information about an event in Magento 2, see [Events and observers](http://devdocs.magento.com/guides/v2.4/extension-dev-guide/events-and-observers.html#events).

### Layouts

This module introduces the following layouts in the `view/adminhtml/layout` directory:
- `adminhtml_integration_edit`
- `adminhtml_integration_grid`
- `adminhtml_integration_grid_block`
- `adminhtml_integration_index`
- `adminhtml_integration_new`
- `adminhtml_integration_permissionsdialog`
- `adminhtml_integration_tokensdialog`
- `adminhtml_integration_tokensexchange`

For more information about a layout in Magento 2, see the [Layout documentation](https://devdocs.magento.com/guides/v2.4/frontend-dev-guide/layouts/layout-overview.html).

### Public APIs

- `\Magento\Integration\Api\AdminTokenServiceInterface`:
- create access token for admin given the admin credentials
- revoke token by admin ID

- `\Magento\Integration\Api\AuthorizationServiceInterface`:
- grant permissions to user to access the specified resources
- grant permissions to the user to access all resources available in the system
- remove role and associated permissions for the specified integration

- `\Magento\Integration\Api\CustomerTokenServiceInterface`:
- create access token for admin given the customer credentials
- revoke token by customer ID

- `\Magento\Integration\Api\IntegrationServiceInterface`:
- create a new Integration
- get the details of a specific Integration by integration ID
- find Integration by name
- get the details of an Integration by consumer_id
- get the details of an active Integration by consumer_id
- update an Integration
- delete an Integration by integration ID
- get an array of selected resources for an integration

For information about a public API in Magento 2, see [Public interfaces & APIs](http://devdocs.magento.com/guides/v2.4/extension-dev-guide/api-concepts.html).

## Additional information

### Cron options

Cron group configuration can be set at `etc/crontab.xml`:
- `outdated_authentication_failures_cleanup` - clearing log of outdated token request authentication failures
- `expired_tokens_cleanups` - delete expired customer and admin tokens

[Learn how to configure and run cron in Magento.](http://devdocs.magento.com/guides/v2.4/config-guide/cli/config-cli-subcommands-cron.html).

More information can get at articles:
- [Learn more about an Integration](https://docs.magento.com/user-guide/system/integrations.html)
- [Lear how to create an Integration](https://devdocs.magento.com/guides/v2.4/get-started/create-integration.html)
Loading

0 comments on commit b01435e

Please sign in to comment.