DOWNLOAD PDF CORE DATA PROGRAMMING GUIDE

Size: px
Start display at page:

Download "DOWNLOAD PDF CORE DATA PROGRAMMING GUIDE"

Transcription

1 Chapter 1 : Core Data Programming Guide : Download Free Book Core Data is a framework that you use to manage the model layer objects in your application. It provides generalized and automated solutions to common tasks associated with object life cycle and object graph management, including persistence. What Is Core Data? Important This document is no longer being updated. For the latest information about Apple SDKs, visit the documentation website. Core Data is a framework that you use to manage the model layer objects in your application. It provides generalized and automated solutions to common tasks associated with object life cycle and object graph management, including persistence. Core Data typically decreases by 50 to 70 percent the amount of code you write to support the model layer. This is primarily due to the following built-in features that you do not have to implement, test, or optimize: Change tracking and built-in management of undo and redo beyond basic text editing. Maintenance of change propagation, including maintaining the consistency of relationships among objects. Lazy loading of objects, partially materialized futures faulting, and copy-on-write data sharing to reduce overhead. Automatic validation of property values. Managed objects extend the standard key-value coding validation methods to ensure that individual values lie within acceptable ranges, so that combinations of values make sense. Schema migration tools that simplify schema changes and allow you to perform efficient in-place schema migration. Grouping, filtering, and organizing data in memory and in the user interface. Automatic support for storing objects in external data repositories. Version tracking and optimistic locking to support automatic multiwriter conflict resolution. Effective integration with the macos and ios tool chains. Note This document uses an employees database-style example for expediency and clarity. It represents a rich but easily understood problem domain. However, the Core Data framework is not restricted to database-style applications, nor is there an expectation of client-server behavior. The framework is equally as useful as the basis of a vector graphics application such as Sketch or a presentation application such as Keynote. Page 1

2 Chapter 2 : Core Data Relationships and Delete Rules Much of Core Data's functionality depends on the schema you create to describe your application's entities, their properties, and the relationships between them. Core Data uses a schema called a managed object model â an instance of NSManagedObjectModel. In general, the richer the model, the. I am going to assume that you have a moderate level of knowledge and familiarity with creating ios apps. I will skip over areas such as setting up the user interface and similar basic functions. Instead I will focus specifically on the less obvious and trickier areas. Update History 29 August, Added a new notification which provides a summary of all changes and is better suited to triggering UI refreshing. Added new method that is called prior to migration to update creation dates for all objects. Added change notifications for local data changes. You are free to use the code in commercial and non-commercial apps. You can modify and redistribute the code as desired. No attribution is required but if you want to provide one that would be pretty awesome. I have preserved all license and readme files they have provided. Please respect their copyright and any license conditions. To add the library to your existing app drag and drop the ioscorelibrary. The Project Navigator should now look similar to below: Link to Library and Required Frameworks Now that we have the library included we need to tell the app to link to it. We also need to add some additional frameworks. The required frameworks are: The graphics frameworks are used to render the progress image. If you do not intend to use the Dropbox uploader you can delete the Dropbox framework and uploader from the library. To link to the frameworks select your project in the Project Navigator and then select your target. In the General tab there is a Linked Frameworks and Libraries section. These are packaged into a bundle which must be copied across with the resources for your application. There will be two files: At this point you should still have the target for your app selected if not select it now. This ensures that if you make any modifications to the ios Core Library that it will be rebuilt before attempting to rebuild your application. At this point your Build Phases tab should look similar to the screenshot below: If you have not previously used a library with categories then you may never have come across a quirk in how the linker behaves. If at this point we simply tried to use the library in the app we would see crashes with a message such as unrecognized selector sent to instance. This happens because the categories are not being compiled into your app. To work around this we use a special linker flag. There is a flag that force loads all libraries but I prefer to only apply the flag to the specific libraries that require it. With the target for your app selected navigate to the Build Settings tab. Find the Linking section. Layout of the Sample App At this point you should now be able to build your app. The data model for the app is a simple one comprised of three objects: Pet, Owner and Classification. The objects are setup as follows: Pet Has two attributes creationdate and name Has a single owner one to one relationship Has a single classification one to one relationship Owner Has two attributes creationdate and name Has multiple pets one to many relationship Classification Has two attributes creationdate and name Has multiple pets one to many relationship The relationships are all optional and the delete rule is set to nullify ie. As I recommended in an earlier post I have setup a category for each object to handle any customisation. There are two main methods that I always add as a starting point. The first method to add is automatic population of the creationdate attribute to all of the object categories. This is a simple matter of adding an awakefrominsert method and setting the creation date there. The creation date will be set automatically when a new object is created. Page 2

3 Chapter 3 : icloud and Core Data: Sample App Download "Core Data Programming Guide" in pdf format or read it online.. Description. The Core Data framework provides generalized and automated solutions to common tasks associated with object life-cycle and object graph management, including persistence. In general, the richer the model, the better Core Data is able to support your application. A managed object model allows Core Data to map from records in a persistent store to managed objects that you use in your application. The model is a collection of entity description objects instances of NSEntityDescription. An entity description describes an entity which you can think of as a table in a database in terms of its name, the name of the class used to represent the entity in your application, and what properties attributes and relationships it has. A source file for the Core Data model is created as part of the template. That source file will have the extension. Select that file in the navigator area to display the Core Data model editor. To create an entity A new untitled entity appears in the Entities list in the navigator area. Select the new untitled entity. In the Entity pane of the Data Model inspector, enter the name of the entity, and press Return. A new untitled attribute or relationship generically referred to as a property is added in the Attributes or Relationships section of the editor area. Select the new untitled property. The property settings are displayed in the Relationship pane or Attribute pane of the Data Model inspector. Give the property a name, and press Return. The attribute or relationship information appears in the editor area. Employee entity in the Xcode Data Model editor shows an entity called Employee, with attributes that describe the employee: Figure Employee entity in the Xcode Data Model editor At this point you have created an entity in the model, but you have not created any data. Data is created later, when you launch your application. These entities will be used in your application as the basis for the creation of managed objects NSManagedObject instances. Defining an Entity Now that you have named your entity, you define it further in the Entity pane of the Data Model inspector; see Entity pane in the Data Model inspector. The entity structure in the data model does not need to match the class hierarchy. Figure shows a class name with the recommended class name pattern of Objective-C, along with an MO suffix. An entity name and a class name are required. Abstract Entities Specify that an entity is abstract if you will not create any instances of that entity. You typically make an entity abstract if you have a number of entities that all represent specializations of inherit from a common entity that should not itself be instantiated. For example, in the Employee entity you could define Person as an abstract entity and specify that only concrete subentities Employee and Customer can be instantiated. By marking an entity as abstract in the Entity pane of the Data Model inspector, you are informing Core Data that it will never be instantiated directly. Entity Inheritance Entity inheritance works in a similar way to class inheritance; and is useful for the same reasons. If you have a number of entities that are similar, you can factor the common properties into a superentity, also known as a parent entity. Rather than specifying the same properties in several entities, you can define them in one entity, and the subentities inherit them. For example, you might define a Person entity with attributes firstname and lastname, and subentities Employee and Customer, which inherit those attributes. An example of this layout is shown in Figure Display the layout diagram by clicking the Editor Style buttons in the lower-right corner. In many cases, you also implement a custom class to correspond to the entity from which classes representing the subentities also inherit. Rather than implementing business logic common to all the entities several times over, you implement them in one place and they are inherited by the subclasses. Note Be careful with entity inheritance when working with SQLite persistent stores. All entities that inherit from another entity exist within the same table in SQLite. This factor in the design of the SQLite persistent store can create a performance issue. Among other features, each property has a name and a type. Core Data does track changes you make to transient properties, so they are recorded for undo operations. You use transient properties for a variety of purposes, including keeping calculated values and derived values. Note If you undo a change to a transient property that uses nonmodeled information, Core Data does not invoke your set accessor with the old value â it simply updates the snapshot information. You can specify that an attribute is optionalâ that is, it is not required to have a value. In general, however, avoid doing so, especially for Page 3

4 numeric values. Typically, you can get better results using a mandatory attribute with a default valueâ defined in the attributeâ of 0. Moreover, NULL in a database is not equivalent to an empty string or empty data blob. Relationships and Fetched Properties To define a relationship, select it in the Core Data model editor, and specify values in the Relationship pane of the Data Model inspector; Relationship in the Data Model inspector. Figure Relationship pane in the Data Model inspector Core Data supports to-one and to-many relationships, and fetched properties. Fetched properties represent weak, one-way relationships. The Type pop-up menu defines whether the relationship is a to-one type relationship or a to-many type relationship. Relationships are defined from one direction at a time. To create a many-to-many relationship, you would need to create two to-many relationships and then set them up as inverses of each other. The Destination pop-up menu defines what object or objects is returned when the relationship is accessed in code. If the relationship is defined as to-one, a single object or nil if the relationship can be optional is returned. If the relationship is defined as to-many, a set is returned or again, nil if the relationship can be optional. The Inverse pop-up menu defines the other half of a relationship. Because each relationship is defined from one direction, this pop-up menu joins two relationships together to create a fully bidirectional relationship. Page 4

5 Chapter 4 : Core Data Programming Guide: Creating a Managed Object Model Contents Introduction to Core Data Programming Guide 13 Who Should Read This Document 13 Organization of This Document 13 See Also 15 Before You Start 17 Prerequisites Let me illustrate this with an example. We have a category that contains several notes. If the category is deleted, the notes are not notified of this event. The notes on the other end of the relationship believe that they are still associated with the deleted category. I have never had a need to use this delete rule in a project. In most situations, you want to take some action when a record is deleted. And that is where the other delete rules come into play. Nullify Delete Rule If the delete rule of a relationship is set to Nullify, the destination of the relationship is nullified when the record is deleted. For example, if a category has several notes and the category is deleted, the relationships pointing from the notes to the category are nullified. This is the default delete rule and the delete rule you will find yourself using most often. Cascade Delete Rule The Cascade delete rule is useful if the data model includes one or more dependencies. Let me give you an example. If a note should always have a category, the deletion of a category should automatically delete the notes associated with that category. In other words, the deletion of the category cascades or trickles down to the notes linked to the category. The Deny delete rule is a better option in this scenario see below. If you are dealing with a Many-To-Many relationship, this is often not what you want. If a note can have several tags and a tag can be linked to several notes, deleting a tag should not result in the deletion of every note with that tag. The notes could be associated with other tags, for example. Deny Delete Rule Remember the previous example in which the deletion of a category resulted in the deletion of every note that belonged to that category. It may be better to apply the Deny delete rule. Deny is another powerful and useful pattern. It is the opposite of the Cascade delete rule. Instead of cascading the deletion of a record, it prevents the deletion of the record. For example, if a category is associated with several notes, the category can only be deleted if it is no longer tied to any notes. This configuration prevents the scenario in which notes are no longer associated with a category. Choose Wisely You cannot ignore delete rules when working Core Data. Take the time to understand the above concepts and leverage the power of Core Data. The default delete rule, Nullify, is often the correct choice. Make Core Data work for you. Page 5

6 Chapter 5 : icloud Programming Guide for Core Data - Apple Developer I'm currently reading through Apple's Core Data Programming Guide and came across Merging Changes with Transient Properties (last paragraph of Managed Objects and References). Metadata uploaded 36 Store initialization: Transaction logs downloaded 36 Content changes: Transaction log uploaded 37 Content changes: High save frequency 37 Content changes: Other peers download the changes to keep your app up to date. To help you persist managed objects to the cloud, icloud is integrated with Core Data. The icloud service and Core Data take care of the rest: The system manages the files in the ubiquity container that make up your persistent store, and Core Data helps you keep your app up to date. To let you know when the content in your container changes, Core Data posts notifications. At a Glance When you use Core Data, you have several storage models to choose from. Using Core Data with icloud, you have a subset of these options, as follows: Atomic stores work best for smaller storage requirements. Transactional stores work best for larger, more complex storage requirements. Use document storage in combination with either an atomic or a transactional store. When you decide on a storage model, consider the strengths of each store as well as the icloud-specific strengths discussed below. Binary and XML store files are themselves transferred to the icloud servers; so whenever a change is made to the data, the system uploads the entire store and pushes it to all connected devices. This means that changes on one peer can overwrite changes made on the others. Continue reading this document to learn more about how to use icloud with an SQLite store. Changes to managed documents are automatically persisted to icloud. By default, managed documents are backed by SQLite-type persistent stores, but you can choose to use atomic stores instead. While the steps you take to integrate the UIManagedDocument class into your app differ, the model-specific guidelines and best practices you follow are generally the same. In addition, this guide assumes a working knowledge of Core Data, a powerful object graph and data persistence framework. Follow the implementation strategy in this chapter to create a robust, high-performance icloud-enabled app. Using these guidelines and sample code, you will learn how to: This effectively links the two together. You perform two tasks to add icloud to a new Core Data app: Apps that use icloud cannot use wildcard identifiers. Set your project to code-sign using the App ID you just created. Enable icloud in Xcode. Click the switch next to icloud, as shown in Figure Xcode configures your App ID in the developer portal and adds entitlements to your app. These entitlements give your app permission to access its ubiquity container s. By default, Xcode creates one ubiquity container identifier using your App ID. Figure Enabling icloud capability Note: Adding an icloud-enabled Persistent Store to Core Data After you enable icloud, your app can begin persisting documents and data to your ubiquity container. Therefore, you must create an icloud-enabled persistent store to start using icloud. You pass the following key-value pair in the options dictionary to enable icloud. If you need a reference to the persistent store, use the URL generated by the coordinator rather than the one you created. Checkpoint At this point, your app can create an icloud-enabled Core Data persistent store. Create a Core Data stack and add a persistent store with the ubiquitous content name option. Run the app on a device. Core Data tells your app about these events using notifications. Otherwise, your app could receive notifications from other persistent store coordinators. Notifications may not be posted on the same thread as your managed object context. It is especially important to test an icloud-enabled ios app on an actual device. Core Data Configures Your Persistent Store The first icloud event happens after you add an icloud-enabled persistent store to your persistent store coordinator. Core Data returns your persistent store from the method invocation and immediately posts an NSPersistentStoreCoordinatorStoresDidChangeNotification notification to let your app know that the persistent store has been configured for use. In Figure, your app adds an icloud-enabled persistent store, which causes Core Data to post a notification and begin container setup. Because this notification is posted immediately after you invoke addpersistentstorewithtype: Checkpoint At this checkpoint you have configured Core Data to tell your app when an icloud-enabled persistent store is ready for use. After adding a new icloud-enabled persistent store in the previous section, you created a notification handler to respond to NSPersistentStoreCoordinatorStoresDidChangeNotification notifications. Add an NSLog statement inside of Page 6

7 your stores-did-change notification handler. Completely remove your app from your device and then click the run button in Xcode to reinstall your app and reopen it. If Core Data successfully created and configured an icloud-enabled persistent store, the framework invokes your notification handler and your NSLog statement will print to the console in Xcode. Ubiquity container initialization is a long-running operation that relies on network connectivity with the icloud service. Because of this, the Core Data framework provides you with a temporary local persistent store that you use while the work is performed in the background. On subsequent app launches, the ubiquity container is already initialized and Core Data is associated with the icloud-enabled persistent store. When Core Data finishes moving all of your data, the temporary local store and the contents of your managed object context s are invalid. To prepare you for this event, Core Data posts two notifications after it finishes moving your data: In your notification handler, you reset your managed object context and drop any references to existing managed objects. As soon as your handler finishes executing, these objects are no longer valid. You must also prevent any interaction with the temporary local store while Core Data transitions to the icloud-enabled store. Disabling your user interface is the simplest way to do this in a UI-driven app and is in most cases invisible to the user. This is because the time between the will-change notification and the did-change notification is extremely short. Checkpoint At this point, your notification handlers disable, enable, and refresh your user interface when one-time setup is finished. On your ios device, begin with airplane mode enabled. Completely remove your app from your device as well. Run your app and create a few records. Core Data invokes your notification handlers and your records disappear. Your notification handler behaves slightly differently: Rather than immediately resetting your managed object context, you check for changes in your managed object context and invoke save:. Otherwise, you follow the same process as described in the previous section, resetting your context and disabling your user interface. Core Data continues to post this notification until you no longer invoke save: This loop is illustrated above in Figure and implemented below. Begin with airplane mode enabled on your ios device, or all network interfaces disabled on your Mac. Disable airplane mode or reenable a network interface. Core Data invokes your notification handlers, and your records persist after your notification handler executes a new fetch request. Core Data represents this event as shown in Figure Therefore you can merge in changes from other peers in the same way that you merge changes from other managed object contexts. Install your app on two devices. Run your app on both devices, and create a few distinct records on each. A transition occurs for all of the following four events: Reacting to Account Transitions When the system informs Core Data of an account transition while your app is running, Core Data works with your app to prepare for the event. Figure shows the timeline of an account transition event. You can use this information to find out why a transition is happening. You must also prevent any interaction with the icloud-enabled store while Core Data finishes transitioning. In a UI-driven app, disabling your user interface is the simplest way to do this. When the current icloud account is removed, Core Data saves your store to an account-specific archive. If the user signs into the same account again in the future, Core Data unarchives the data and resumes uploading. Because ios periodically removes stores associated with accounts that are no longer active, there is no guarantee that records saved after you receive the NSPersistentStoreCoordinatorStoresWillChangeNotification notification will be persisted to icloud. Again, because ios deletes old stores associated with icloud accounts that are no longer active on the device, your changes may never be saved or sent to the cloud. As illustrated in Figure above, saving your managed object context does not cause a loop. Install your app on a device with icloud enabled. Run your app on both devices, and create a few distinct records. Seeding Initial Data If your app is packaged with a prebuilt database or if a previous version of your app did not persist to icloud, your persistent store coordinator can create an icloud-enabled persistent store and migrate the records in a single step. Pass in your existing persistent store as the first argument in the method. Migrating a persistent store is a synchronous task, unlike adding an icloud-enabled persistent store. You dispatch migration onto a background queue and then update your user interface after migration is complete. Finally, mark seeding as complete using icloud key-value storage so that other peers do not seed the same data. Page 7

8 Chapter 6 : Core Data Programming Guide: What Is Core Data? Search among more than user manuals and view them online blog.quintoapp.com Metadata uploaded 36 Store initialization: Transaction logs downloaded 36 Content changes: Transaction log uploaded 37 Content changes: High save frequency 37 Content changes: Other peers download the changes to keep your app up to date. To help you persist managed objects to the cloud, icloud is integrated with Core Data. The icloud service and Core Data take care of the rest: The system manages the files in the ubiquity container that make up your persistent store, and Core Data helps you keep your app up to date. To let you know when the content in your container changes, Core Data posts notifications. At a Glance When you use Core Data, you have several storage models to choose from. Using Core Data with icloud, you have a subset of these options, as follows: Atomic stores work best for smaller storage requirements. Transactional stores work best for larger, more complex storage requirements. Use document storage in combination with either an atomic or a transactional store. When you decide on a storage model, consider the strengths of each store as well as the icloud-specific strengths discussed below. Binary and XML store files are themselves transferred to the icloud servers; so whenever a change is made to the data, the system uploads the entire store and pushes it to all connected devices. This means that changes on one peer can overwrite changes made on the others. Continue reading this document to learn more about how to use icloud with an SQLite store. Changes to managed documents are automatically persisted to icloud. By default, managed documents are backed by SQLite-type persistent stores, but you can choose to use atomic stores instead. While the steps you take to integrate the UIManagedDocument class into your app differ, the model-specific guidelines and best practices you follow are generally the same. In addition, this guide assumes a working knowledge of Core Data, a powerful object graph and data persistence framework. Follow the implementation strategy in this chapter to create a robust, high-performance icloud-enabled app. Using these guidelines and sample code, you will learn how to: This effectively links the two together. You perform two tasks to add icloud to a new Core Data app: Apps that use icloud cannot use wildcard identifiers. Set your project to code-sign using the App ID you just created. Enable icloud in Xcode. Click the switch next to icloud, as shown in Figure Xcode configures your App ID in the developer portal and adds entitlements to your app. These entitlements give your app permission to access its ubiquity container s. By default, Xcode creates one ubiquity container identifier using your App ID. Figure Enabling icloud capability Note: Adding an icloud-enabled Persistent Store to Core Data After you enable icloud, your app can begin persisting documents and data to your ubiquity container. Therefore, you must create an icloud-enabled persistent store to start using icloud. You pass the following key-value pair in the options dictionary to enable icloud. If you need a reference to the persistent store, use the URL generated by the coordinator rather than the one you created. Checkpoint At this point, your app can create an icloud-enabled Core Data persistent store. Create a Core Data stack and add a persistent store with the ubiquitous content name option. Run the app on a device. Core Data tells your app about these events using notifications. Otherwise, your app could receive notifications from other persistent store coordinators. Notifications may not be posted on the same thread as your managed object context. It is especially important to test an icloud-enabled ios app on an actual device. Core Data Configures Your Persistent Store The first icloud event happens after you add an icloud-enabled persistent store to your persistent store coordinator. Core Data returns your persistent store from the method invocation and immediately posts an NSPersistentStoreCoordinatorStoresDidChangeNotification notification to let your app know that the persistent store has been configured for use. In Figure, your app adds an icloud-enabled persistent store, which causes Core Data to post a notification and begin container setup. Because this notification is posted immediately after you invoke addpersistentstorewithtype: Checkpoint At this checkpoint you have configured Core Data to tell your app when an icloud-enabled persistent store is ready for use. After adding a new icloud-enabled persistent store in the previous section, you created a notification handler to respond to NSPersistentStoreCoordinatorStoresDidChangeNotification notifications. Add an NSLog statement inside of your stores-did-change notification handler. Completely remove your app from your device and then click the Page 8

9 run button in Xcode to reinstall your app and reopen it. If Core Data successfully created and configured an icloud-enabled persistent store, the framework invokes your notification handler and your NSLog statement will print to the console in Xcode. Ubiquity container initialization is a long-running operation that relies on network connectivity with the icloud service. Because of this, the Core Data framework provides you with a temporary local persistent store that you use while the work is performed in the background. On subsequent app launches, the ubiquity container is already initialized and Core Data is associated with the icloud-enabled persistent store. When Core Data finishes moving all of your data, the temporary local store and the contents of your managed object context s are invalid. To prepare you for this event, Core Data posts two notifications after it finishes moving your data: In your notification handler, you reset your managed object context and drop any references to existing managed objects. As soon as your handler finishes executing, these objects are no longer valid. You must also prevent any interaction with the temporary local store while Core Data transitions to the icloud-enabled store. Disabling your user interface is the simplest way to do this in a UI-driven app and is in most cases invisible to the user. This is because the time between the will-change notification and the did-change notification is extremely short. Checkpoint At this point, your notification handlers disable, enable, and refresh your user interface when one-time setup is finished. On your ios device, begin with airplane mode enabled. Completely remove your app from your device as well. Run your app and create a few records. Core Data invokes your notification handlers and your records disappear. Your notification handler behaves slightly differently: Rather than immediately resetting your managed object context, you check for changes in your managed object context and invoke save:. Otherwise, you follow the same process as described in the previous section, resetting your context and disabling your user interface. Core Data continues to post this notification until you no longer invoke save: This loop is illustrated above in Figure and implemented below. Begin with airplane mode enabled on your ios device, or all network interfaces disabled on your Mac. Disable airplane mode or reenable a network interface. Core Data invokes your notification handlers, and your records persist after your notification handler executes a new fetch request. Core Data represents this event as shown in Figure Therefore you can merge in changes from other peers in the same way that you merge changes from other managed object contexts. Install your app on two devices. Run your app on both devices, and create a few distinct records on each. A transition occurs for all of the following four events: Reacting to Account Transitions When the system informs Core Data of an account transition while your app is running, Core Data works with your app to prepare for the event. Figure shows the timeline of an account transition event. You can use this information to find out why a transition is happening. You must also prevent any interaction with the icloud-enabled store while Core Data finishes transitioning. In a UI-driven app, disabling your user interface is the simplest way to do this. When the current icloud account is removed, Core Data saves your store to an account-specific archive. If the user signs into the same account again in the future, Core Data unarchives the data and resumes uploading. Because ios periodically removes stores associated with accounts that are no longer active, there is no guarantee that records saved after you receive the NSPersistentStoreCoordinatorStoresWillChangeNotification notification will be persisted to icloud. Again, because ios deletes old stores associated with icloud accounts that are no longer active on the device, your changes may never be saved or sent to the cloud. As illustrated in Figure above, saving your managed object context does not cause a loop. Install your app on a device with icloud enabled. Run your app on both devices, and create a few distinct records. Seeding Initial Data If your app is packaged with a prebuilt database or if a previous version of your app did not persist to icloud, your persistent store coordinator can create an icloud-enabled persistent store and migrate the records in a single step. Pass in your existing persistent store as the first argument in the method. Migrating a persistent store is a synchronous task, unlike adding an icloud-enabled persistent store. You dispatch migration onto a background queue and then update your user interface after migration is complete. Finally, mark seeding as complete using icloud key-value storage so that other peers do not seed the same data. Page 9

10 Chapter 7 : ios - Core Data Programming Guide: Merging Changes with Transient Properties - Stack Overf Beyond simple persistence and querying, core data offers change tracking and undo support, futures, value validation, UI synchronization, and automatic multi-writer conflict resolution. Use it because it's mature, proven, robust, efficient, and integrates well with the development toolchain. A. This post compatible with Xcode 6. Make sure to download it here using your ios Developer account. This data is persistent and lasts even through a complete shut down of your phone. The first thing to know about Core Data before diving in is that it is not a relational database, and although it uses SQLite as a backing engine, is not an ORM to a relational database either. The SQLite backend is more of an implementation detail, and in fact binary files or plists can be used instead. The official Apple documentation describes Core Data like this: Create a new Xcode 6 project using a single-view template, Swift as the language, and with Core Data enabled. Looking for something more in-depth than a tutorial? Most of these are setting up the Core Data stack. The defaults are fine for now. The primary object that needs to be used to work with Core Data is the managedobjectcontext defined here. If you used the Core Data template as shown above, this code will already be present. Knowing this we can access the managedobjectcontext from our ViewController. For example in viewdidload of ViewController. How about if we just store it as an instance variable on the ViewController? In viewdidload we cause this variable to be computed by printing it to the console. If your application is set up right you should see something like this: Opening up this file you can see the Core Data model editor. Our log app will show a list of LogItems, which have a bit of text in them. From here we can rename the default name, Entity, to LogItem. Name this attribute title, and give it a type of String. From this point on, any changes you make to your Core Data model, such as adding a new Entity or Attribute will lead to an inconsistency in the model of the app in the iphone Simulator. If this happens to you there is a very easy fix: This will erase all out of date versions of the model, and allow you to do a fresh run. Now that we have our first Entity created, we want to also be able to directly access this entity as a class in our code. Xcode provides an automated tool to do this. Then, check the LogItem entity, and press next again. A file save window should appear with an option to specify the language as Swift, select this. Finally hit Create, and you should now see a LogItem. String NSManaged var itemtext: The entity we created is represented by the similarly named class LogItem, and the attributes are turned in to variables using the NSManaged identifier, which gives the variables special treatment allowing them to operate with Core Data. For most intents and purposes though, you can just think of these as instance variables. Because of the way Swift modules work, we need to make one modification to the core data model. But this is not the best approach because it leaves too much opportunity to mis-type an attribute name, or get the wrong object type unexpectedly and have hard crashes trying to access these attributes. What this means, simply put, is that we can set the title and itemtext like this: This is a really nasty way to work with the Core Data API as it relies heavily on determining object classes, entities, state, and more at runtime based on string comparisons, yuck! Next, we create a fetchresults variable by using the executefetchrequest method of managedobjectcontext. The only thing we have specified in our fetchrequest is the entity, so this particular fetch just returns every record. Run the app and you should see the item presented to the screen. This is the first step in to building apps with persistent storage. Page 10

11 Chapter 8 : Core Data Programming Guide blog.quintoapp.com Apple Footer. This site contains user submitted content, comments and opinions and is for informational purposes only. Apple may provide or recommend responses as a possible solution based on the information provided; every potential issue may involve several factors not detailed in the conversations captured in an electronic forum and Apple can therefore provide no guarantee as to the. The main thread is tied into the event cycle for the application so that processpendingchanges is invoked automatically after every user event on contexts owned by the main thread. This is not the case for background threadsâ when the method is invoked depends on both the platform and the release version, so you should not rely on particular timing. If the secondary context is not on the main thread, you should call processpendingchanges yourself at appropriate junctures. If necessary, the Core Data will create additional private threads to optimize fetching performance. You will not improve absolute fetching speed by creating background threads for the purpose. This means that if a fetch is complicated or returns a large amount of data, you can return control to the user and display results as they arrive. Following the thread confinement pattern, you use two managed object contexts associated with a single persistent store coordinator. You fetch in one managed object context on a background thread, and pass the object IDs of the fetched objects to another thread. This technique is only useful if you are using an SQLite store, since data from binary and XML stores is read into memory immediately on open. Saving in a Background Thread is Error-prone Asynchronous queues and threads do not prevent an application from quitting. Specifically, all NSThread the documentation for pthread for complete detailsâ and a process runs only until all not-detached threads have exited. If you perform a save operation in a background thread, therefore, it may be killed before it is able to complete. If you need to save on a background thread, you must write additional code such that the main thread prevents the application from quitting until all the save operation is complete. You also need to consider that: Any time you manipulate or access managed objects, you use the associated managed object context. Managed objects themselves are not thread safe. If you want to work with a managed object across different threads, you must lock its context see NSLocking. If you share a managed object context or a persistent store coordinator between threads, you must ensure that any method invocations are made from a thread-safe scope. For locking, you should use the NSLocking methods on managed object context and persistent store coordinator instead of implementing your own mutexes. Typically you lock the context or coordinator using trylock lock. If you do this, the framework will ensure that what it does behind the scenes is also thread-safe. For example, if you create one context per thread, but all pointing to the same persistent store coordinator, Core Data takes care of accessing the coordinator in a thread-safe way the. Chapter 9 : Core Data by Tutorials blog.quintoapp.com Store AppleInc. Â,AppleInc. Allrightsreserved. Nopartofthispublicationmaybereproduced, storedinaretrievalsystem,ortransmitted,in anyformorbyanymeans,mechanical. Page 11

Data Management

Data Management Core Data Programming Guide Data Management 2009-11-17 Apple Inc. 2004, 2009 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted,

More information

ITP 342 Advanced Mobile App Dev. Core Data

ITP 342 Advanced Mobile App Dev. Core Data ITP 342 Advanced Mobile App Dev Core Data Persistent Data NSUser Defaults Typically used to save app preferences Property List (plist) in Documents Directory Data is in a dictionary or an array Coders

More information

Core Data Programming Guide

Core Data Programming Guide Core Data Programming Guide 2006-12-05 Apple Computer, Inc. 2004, 2006 Apple Computer, Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted,

More information

Chatter Answers Implementation Guide

Chatter Answers Implementation Guide Chatter Answers Implementation Guide Salesforce, Spring 16 @salesforcedocs Last updated: April 27, 2016 Copyright 2000 2016 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark

More information

1 Build Your First App. The way to get started is to quit talking and begin doing. Walt Disney

1 Build Your First App. The way to get started is to quit talking and begin doing. Walt Disney 1 Build Your First App The way to get started is to quit talking and begin doing. Walt Disney Copyright 2015 AppCoda Limited All rights reserved. Please do not distribute or share without permission. No

More information

Chatter Answers Implementation Guide

Chatter Answers Implementation Guide Chatter Answers Implementation Guide Salesforce, Summer 18 @salesforcedocs Last updated: July 26, 2018 Copyright 2000 2018 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark

More information

ADF Mobile Code Corner

ADF Mobile Code Corner ADF Mobile Code Corner m03. Abstract: Dependent lists is a common functional requirement for web, desktop and also mobile applications. You can build dependent lists from dependent, nested, and from independent,

More information

This guide illustrates how to set up an Apple device for deployment, and deploy an application. It covers how to:

This guide illustrates how to set up an Apple device for deployment, and deploy an application. It covers how to: Device Provisioning Overview Before you can deploy your application to a device, you need to have an active subscription with the Apple Developer Program. Visit the Apple Developer Portal to get registered.

More information

The Salesforce Migration Playbook

The Salesforce Migration Playbook The Salesforce Migration Playbook By Capstorm Table of Contents Salesforce Migration Overview...1 Step 1: Extract Data Into A Staging Environment...3 Step 2: Transform Data Into the Target Salesforce Schema...5

More information

Registering for the Apple Developer Program

Registering for the Apple Developer Program It isn t necessary to be a member of the Apple Developer Program if you don t intend to submit apps to the App Stores, or don t need the cloud-dependent features. We strongly recommend joining, though,

More information

Developing Applications for ios

Developing Applications for ios Developing Applications for ios Lab 10: Nearby Deals (6 of 6) Radu Ionescu raducu.ionescu@gmail.com Faculty of Mathematics and Computer Science University of Bucharest Task 1 Task: Save the favorite deals

More information

Dec2005: Released with v6.u1u1. Other than the title, the document is unchanged relative to v6.1.

Dec2005: Released with v6.u1u1. Other than the title, the document is unchanged relative to v6.1. Sablime v6.1 Update 1 Visual Studio* Plug-in Guide April 2005 Dec2005: Released with v6.u1u1. Other than the title, the document is unchanged relative to v6.1. What this Guide Covers This guide provides

More information

HarePoint HelpDesk for SharePoint. User Guide

HarePoint HelpDesk for SharePoint. User Guide HarePoint HelpDesk for SharePoint For SharePoint Server 2016, SharePoint Server 2013, SharePoint Foundation 2013, SharePoint Server 2010, SharePoint Foundation 2010 User Guide Product version: 16.2.0.0

More information

A Guide to Quark Author Web Edition 2015

A Guide to Quark Author Web Edition 2015 A Guide to Quark Author Web Edition 2015 CONTENTS Contents Getting Started...4 About Quark Author - Web Edition...4 Smart documents...4 Introduction to the Quark Author - Web Edition User Guide...4 Quark

More information

WPS Workbench. user guide. "To help guide you through using the WPS user interface (Workbench) to create, edit and run programs"

WPS Workbench. user guide. To help guide you through using the WPS user interface (Workbench) to create, edit and run programs WPS Workbench user guide "To help guide you through using the WPS user interface (Workbench) to create, edit and run programs" Version: 3.1.7 Copyright 2002-2018 World Programming Limited www.worldprogramming.com

More information

12/05/2017. Geneva ServiceNow Custom Application Development

12/05/2017. Geneva ServiceNow Custom Application Development 12/05/2017 Contents...3 Applications...3 Creating applications... 3 Parts of an application...22 Contextual development environment... 48 Application management... 56 Studio... 64 Service Creator...87

More information

Reference Requirements for Records and Documents Management

Reference Requirements for Records and Documents Management Reference Requirements for Records and Documents Management Ricardo Jorge Seno Martins ricardosenomartins@gmail.com Instituto Superior Técnico, Lisboa, Portugal May 2015 Abstract When information systems

More information

Configuring Job Monitoring in SAP Solution Manager 7.2

Configuring Job Monitoring in SAP Solution Manager 7.2 How-To Guide SAP Solution Manager Document Version: 1.0 2017-05-31 Configuring Job Monitoring in SAP Solution Manager 7.2 Typographic Conventions Type Style Example Example EXAMPLE Example Example

More information

STARCOUNTER. Technical Overview

STARCOUNTER. Technical Overview STARCOUNTER Technical Overview Summary 3 Introduction 4 Scope 5 Audience 5 Prerequisite Knowledge 5 Virtual Machine Database Management System 6 Weaver 7 Shared Memory 8 Atomicity 8 Consistency 9 Isolation

More information

User Guide: Content editing

User Guide: Content editing DIGITAL FACTORY 7.0 User Guide: Content editing Rooted in Open Source CMS, Jahia s Digital Industrialization paradigm is about streamlining Enterprise digital projects across channels to truly control

More information

Xcode Release Notes. Apple offers a number of resources where you can get Xcode development support:

Xcode Release Notes. Apple offers a number of resources where you can get Xcode development support: Xcode Release Notes This document contains release notes for Xcode 5 developer preview 4. It discusses new features and issues present in Xcode 5 developer preview 4 and issues resolved from earlier Xcode

More information

Create and Manage Partner Portals

Create and Manage Partner Portals Create and Manage Partner Portals Salesforce, Summer 18 @salesforcedocs Last updated: June 20, 2018 Copyright 2000 2018 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of

More information

P2: Collaborations. CSE 335, Spring 2009

P2: Collaborations. CSE 335, Spring 2009 P2: Collaborations CSE 335, Spring 2009 Milestone #1 due by Thursday, March 19 at 11:59 p.m. Completed project due by Thursday, April 2 at 11:59 p.m. Objectives Develop an application with a graphical

More information

Content Author's Reference and Cookbook

Content Author's Reference and Cookbook Sitecore CMS 7.2 Content Author's Reference and Cookbook Rev. 140225 Sitecore CMS 7.2 Content Author's Reference and Cookbook A Conceptual Overview and Practical Guide to Using Sitecore Table of Contents

More information

Document-Based App Programming Guide for Mac

Document-Based App Programming Guide for Mac Document-Based App Programming Guide for Mac Contents About the Cocoa Document Architecture 7 At a Glance 7 The Model-View-Controller Pattern Is Basic to a Document-Based App 8 Xcode Supports Coding and

More information

ADF Mobile Code Corner

ADF Mobile Code Corner ADF Mobile Code Corner m05. Caching WS queried data local for create, read, update with refresh from DB and offline capabilities Abstract: The current version of ADF Mobile supports three ADF data controls:

More information

Building Mapping Apps for ios With Swift

Building Mapping Apps for ios With Swift Building Mapping Apps for ios With Swift Jeff Linwood This book is for sale at http://leanpub.com/buildingmappingappsforioswithswift This version was published on 2017-09-09 This is a Leanpub book. Leanpub

More information

BEAWebLogic. Portal. Overview

BEAWebLogic. Portal. Overview BEAWebLogic Portal Overview Version 10.2 Revised: February 2008 Contents About the BEA WebLogic Portal Documentation Introduction to WebLogic Portal Portal Concepts.........................................................2-2

More information

App Development. Quick Guides for Masterminds. J.D Gauchat Cover Illustration by Patrice Garden

App Development. Quick Guides for Masterminds. J.D Gauchat   Cover Illustration by Patrice Garden App Development Quick Guides for Masterminds J.D Gauchat www.jdgauchat.com Cover Illustration by Patrice Garden www.smartcreativz.com Quick Guides for Masterminds Copyright 2018 by John D Gauchat All Rights

More information

Xcode Release Notes. Apple offers a number of resources where you can get Xcode development support:

Xcode Release Notes. Apple offers a number of resources where you can get Xcode development support: Xcode Release Notes This document contains release notes for Xcode 5 developer preview 5. It discusses new features and issues present in Xcode 5 developer preview 5 and issues resolved from earlier Xcode

More information

AADL Graphical Editor Design

AADL Graphical Editor Design AADL Graphical Editor Design Peter Feiler Software Engineering Institute phf@sei.cmu.edu Introduction An AADL specification is a set of component type and implementation declarations. They are organized

More information

Adobe Sign for Microsoft Dynamics

Adobe Sign for Microsoft Dynamics Adobe Sign for Microsoft Dynamics Installation & Configuration Guide (v5) Last Updated: March 16, 2017 2017 Adobe Systems Incorporated. All rights reserved Table of Contents Overview... 3 Prerequisites...

More information

Getting Help...71 Getting help with ScreenSteps...72

Getting Help...71 Getting help with ScreenSteps...72 GETTING STARTED Table of Contents Onboarding Guides... 3 Evaluating ScreenSteps--Welcome... 4 Evaluating ScreenSteps--Part 1: Create 3 Manuals... 6 Evaluating ScreenSteps--Part 2: Customize Your Knowledge

More information

Application Development in ios 7

Application Development in ios 7 Application Development in ios 7 Kyle Begeman Chapter No. 1 "Xcode 5 A Developer's Ultimate Tool" In this package, you will find: A Biography of the author of the book A preview chapter from the book,

More information

Content Author's Reference and Cookbook

Content Author's Reference and Cookbook Sitecore CMS 7.0 Content Author's Reference and Cookbook Rev. 130425 Sitecore CMS 7.0 Content Author's Reference and Cookbook A Conceptual Overview and Practical Guide to Using Sitecore Table of Contents

More information

IBM Campaign Version-independent Integration with IBM Engage Version 1 Release 3.1 April 07, Integration Guide IBM

IBM Campaign Version-independent Integration with IBM Engage Version 1 Release 3.1 April 07, Integration Guide IBM IBM Campaign Version-independent Integration with IBM Engage Version 1 Release 3.1 April 07, 2017 Integration Guide IBM Note Before using this information and the product it supports, read the information

More information

Contents Using the Primavera Cloud Service Administrator's Guide... 9 Web Browser Setup Tasks... 10

Contents Using the Primavera Cloud Service Administrator's Guide... 9 Web Browser Setup Tasks... 10 Cloud Service Administrator's Guide 15 R2 March 2016 Contents Using the Primavera Cloud Service Administrator's Guide... 9 Web Browser Setup Tasks... 10 Configuring Settings for Microsoft Internet Explorer...

More information

Structuring an App Copyright 2013 Apple Inc. All Rights Reserved.

Structuring an App Copyright 2013 Apple Inc. All Rights Reserved. Structuring an App App Development Process (page 30) Designing a User Interface (page 36) Defining the Interaction (page 42) Tutorial: Storyboards (page 47) 29 App Development Process Although the task

More information

EDITING AN EXISTING REPORT

EDITING AN EXISTING REPORT Report Writing in NMU Cognos Administrative Reporting 1 This guide assumes that you have had basic report writing training for Cognos. It is simple guide for the new upgrade. Basic usage of report running

More information

Profile Can't Be Found Jenkins

Profile Can't Be Found Jenkins Iphone Books Code Sign Error Provisioning Profile Can't Be Found Jenkins Code signing is required for product type Unit Test Bundle in SDK ios 8.0 profile accordingly, installed both, but can't get past

More information

Getting Started Guide

Getting Started Guide Getting Started Guide for education accounts Setup Manual Edition 7 Last updated: September 15th, 2016 Note: Click on File and select Make a copy to save this to your Google Drive, or select Print, to

More information

The Myx Architectural Style

The Myx Architectural Style The Myx Architectural Style The goal of the Myx architectural style is to serve as an architectural style that is good for building flexible, high performance tool-integrating environments. A secondary

More information

Salesforce Classic Guide for iphone

Salesforce Classic Guide for iphone Salesforce Classic Guide for iphone Version 35.0, Winter 16 @salesforcedocs Last updated: October 27, 2015 Copyright 2000 2015 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark

More information

SecureTransport Version May Web Client User Guide

SecureTransport Version May Web Client User Guide SecureTransport Version 5.3.6 9 May 2018 Web Client User Guide Copyright 2018 Axway All rights reserved. This documentation describes the following Axway software: Axway SecureTransport 5.3.6 No part of

More information

ITP 342 Mobile App Development. Data Persistence

ITP 342 Mobile App Development. Data Persistence ITP 342 Mobile App Development Data Persistence Persistent Storage Want our app to save its data to persistent storage Any form of nonvolatile storage that survives a restart of the device Want a user

More information

Visual Workflow Implementation Guide

Visual Workflow Implementation Guide Version 30.0: Spring 14 Visual Workflow Implementation Guide Note: Any unreleased services or features referenced in this or other press releases or public statements are not currently available and may

More information

Exercise: Contact Us Form

Exercise: Contact Us Form TM Exercise: Contact Us Form Exercise Build a Contact Us Form The following are instructions to build a Contact Us form yourself; if you d like a pre-built Contact Us form and campaign, you can download

More information

Java Concurrency in practice Chapter 9 GUI Applications

Java Concurrency in practice Chapter 9 GUI Applications Java Concurrency in practice Chapter 9 GUI Applications INF329 Spring 2007 Presented by Stian and Eirik 1 Chapter 9 GUI Applications GUI applications have their own peculiar threading issues To maintain

More information

With IBM BPM 8.5.5, the features needed to express both BPM solutions and case management oriented solutions comes together in one offering.

With IBM BPM 8.5.5, the features needed to express both BPM solutions and case management oriented solutions comes together in one offering. Case Management With the release of IBM BPM 8.5.5, case management capabilities were added to the product. It must be noted that these functions are only available with IBM BPM Advanced and the Basic Case

More information

MarkLogic Server. Information Studio Developer s Guide. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved.

MarkLogic Server. Information Studio Developer s Guide. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved. Information Studio Developer s Guide 1 MarkLogic 8 February, 2015 Last Revised: 8.0-1, February, 2015 Copyright 2015 MarkLogic Corporation. All rights reserved. Table of Contents Table of Contents Information

More information

Using the VMware vrealize Orchestrator Client

Using the VMware vrealize Orchestrator Client Using the VMware vrealize Orchestrator Client vrealize Orchestrator 7.0 This document supports the version of each product listed and supports all subsequent versions until the document is replaced by

More information

Building E-Business Suite Interfaces using BPEL. Asif Hussain Innowave Technology

Building E-Business Suite Interfaces using BPEL. Asif Hussain Innowave Technology Building E-Business Suite Interfaces using BPEL Asif Hussain Innowave Technology Agenda About Innowave Why Use BPEL? Synchronous Vs Asynchronous BPEL Adapters Process Activities Building EBS Interfaces

More information

Vector Issue Tracker and License Manager - Administrator s Guide. Configuring and Maintaining Vector Issue Tracker and License Manager

Vector Issue Tracker and License Manager - Administrator s Guide. Configuring and Maintaining Vector Issue Tracker and License Manager Vector Issue Tracker and License Manager - Administrator s Guide Configuring and Maintaining Vector Issue Tracker and License Manager Copyright Vector Networks Limited, MetaQuest Software Inc. and NetSupport

More information

Author : Gayle Clark, Business Solutions Analyst, Spescom Software Ltd. Approved by : Ewen Roberts, Software Developer Spescom Software Inc.

Author : Gayle Clark, Business Solutions Analyst, Spescom Software Ltd. Approved by : Ewen Roberts, Software Developer Spescom Software Inc. SPESCOM SOFTWARE User Guide eb Layout Editor User Guide Document Number : SAN03810 Rev 0.2 Release Date : 15 December 2006 Document Status : Not Approved Author : Gayle Clark, Business Solutions Analyst,

More information

A product of Byte Works, Inc. Credits Programming Mike Westerfield. Art Karen Bennett. Documentation Mike Westerfield

A product of Byte Works, Inc.  Credits Programming Mike Westerfield. Art Karen Bennett. Documentation Mike Westerfield A product of Byte Works, Inc. http://www.byteworks.us Credits Programming Mike Westerfield Art Karen Bennett Documentation Mike Westerfield Copyright 2016 By The Byte Works, Inc. All Rights Reserved Apple,

More information

Lightning Knowledge Guide

Lightning Knowledge Guide Lightning Knowledge Guide Salesforce, Spring 18 @salesforcedocs Last updated: April 13, 2018 Copyright 2000 2018 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com,

More information

IBM TRIRIGA Application Platform Version 3 Release 4.2. Object Migration User Guide

IBM TRIRIGA Application Platform Version 3 Release 4.2. Object Migration User Guide IBM TRIRIGA Application Platform Version 3 Release 4.2 Object Migration User Guide Note Before using this information and the product it supports, read the information in Notices on page 41. This edition

More information

Glossary. abort. application schema

Glossary. abort. application schema Glossary abort An abnormal termination of a transaction. When a transaction aborts, its changes to the database are erased, and the database is effectively restored to its state as of the moment the transaction

More information

2012 Microsoft Corporation. All rights reserved. Microsoft, Active Directory, Excel, Lync, Outlook, SharePoint, Silverlight, SQL Server, Windows,

2012 Microsoft Corporation. All rights reserved. Microsoft, Active Directory, Excel, Lync, Outlook, SharePoint, Silverlight, SQL Server, Windows, 2012 Microsoft Corporation. All rights reserved. Microsoft, Active Directory, Excel, Lync, Outlook, SharePoint, Silverlight, SQL Server, Windows, Windows Server, and other product names are or may be registered

More information

Tutorial 1: Simple Parameterized Mapping

Tutorial 1: Simple Parameterized Mapping Tutorial 1: Simple Parameterized Mapping 1993-2015 Informatica Corporation. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise)

More information

IBM Case Manager Mobile Version SDK for ios Developers' Guide IBM SC

IBM Case Manager Mobile Version SDK for ios Developers' Guide IBM SC IBM Case Manager Mobile Version 1.0.0.5 SDK for ios Developers' Guide IBM SC27-4582-04 This edition applies to version 1.0.0.5 of IBM Case Manager Mobile (product number 5725-W63) and to all subsequent

More information

DELL EMC UNITY: COMPRESSION FOR FILE Achieving Savings In Existing File Resources A How-To Guide

DELL EMC UNITY: COMPRESSION FOR FILE Achieving Savings In Existing File Resources A How-To Guide DELL EMC UNITY: COMPRESSION FOR FILE Achieving Savings In Existing File Resources A How-To Guide ABSTRACT In Dell EMC Unity OE version 4.2 and later, compression support was added for Thin File storage

More information

Chapter 11: Editorial Workflow

Chapter 11: Editorial Workflow Chapter 11: Editorial Workflow Chapter 11: Editorial Workflow In this chapter, you will follow as submission throughout the workflow, from first submission to final publication. The workflow is divided

More information

User Guide. Kronodoc Kronodoc Oy. Intelligent methods for process improvement and project execution

User Guide. Kronodoc Kronodoc Oy. Intelligent methods for process improvement and project execution User Guide Kronodoc 3.0 Intelligent methods for process improvement and project execution 2003 Kronodoc Oy 2 Table of Contents 1 User Guide 5 2 Information Structure in Kronodoc 6 3 Entering and Exiting

More information

foreword to the first edition preface xxi acknowledgments xxiii about this book xxv about the cover illustration

foreword to the first edition preface xxi acknowledgments xxiii about this book xxv about the cover illustration contents foreword to the first edition preface xxi acknowledgments xxiii about this book xxv about the cover illustration xix xxxii PART 1 GETTING STARTED WITH ORM...1 1 2 Understanding object/relational

More information

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints Active Endpoints ActiveVOS Platform Architecture ActiveVOS Unique process automation platforms to develop, integrate, and deploy business process applications quickly User Experience Easy to learn, use

More information

[ Getting Started with Analyzer, Interactive Reports, and Dashboards ] ]

[ Getting Started with Analyzer, Interactive Reports, and Dashboards ] ] Version 5.3 [ Getting Started with Analyzer, Interactive Reports, and Dashboards ] ] https://help.pentaho.com/draft_content/version_5.3 1/30 Copyright Page This document supports Pentaho Business Analytics

More information

DREAMFACTORY SOFTWARE INC. Snapshot User Guide. Product Usage and Best Practices Guide. By Sathyamoorthy Sridhar June 25, 2012

DREAMFACTORY SOFTWARE INC. Snapshot User Guide. Product Usage and Best Practices Guide. By Sathyamoorthy Sridhar June 25, 2012 DREAMFACTORY SOFTWARE INC Snapshot User Guide Product Usage and Best Practices Guide By Sathyamoorthy Sridhar June 25, 2012 This document describes Snapshot s features and provides the reader with notes

More information

Using the VMware vcenter Orchestrator Client. vrealize Orchestrator 5.5.1

Using the VMware vcenter Orchestrator Client. vrealize Orchestrator 5.5.1 Using the VMware vcenter Orchestrator Client vrealize Orchestrator 5.5.1 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you have comments

More information

Release Notes. FW Version Localization

Release Notes. FW Version Localization Localization WW March 04, 2019 Firmware: 5.20.346 (March 04, 2019) Implemented: New Reading program 1. Improved reading experience thanks to the new PocketBook Reader application. This new embedded application

More information

Case Management Implementation Guide

Case Management Implementation Guide Case Management Implementation Guide Salesforce, Winter 18 @salesforcedocs Last updated: November 30, 2017 Copyright 2000 2017 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark

More information

Java EE Architecture, Part Three. Java EE architecture, part three 1(57)

Java EE Architecture, Part Three. Java EE architecture, part three 1(57) Java EE Architecture, Part Three Java EE architecture, part three 1(57) Content Requirements on the Integration layer The Database Access Object, DAO Pattern Frameworks for the Integration layer Java EE

More information

EMC Documentum My Documentum Desktop (Windows)

EMC Documentum My Documentum Desktop (Windows) EMC Documentum My Documentum Desktop (Windows) Version 7.2 User Guide EMC Corporation Corporate Headquarters: Hopkinton, MA 017489103 15084351000 www.emc.com Legal Notice Copyright 2003 2015 EMC Corporation.

More information

All textures produced with Texture Maker. Not Applicable. Beginner.

All textures produced with Texture Maker. Not Applicable. Beginner. Tutorial for Texture Maker 2.8 or above. Note:- Texture Maker is a texture creation tool by Tobias Reichert. For further product information please visit the official site at http://www.texturemaker.com

More information

Administrative Training Mura CMS Version 5.6

Administrative Training Mura CMS Version 5.6 Administrative Training Mura CMS Version 5.6 Published: March 9, 2012 Table of Contents Mura CMS Overview! 6 Dashboard!... 6 Site Manager!... 6 Drafts!... 6 Components!... 6 Categories!... 6 Content Collections:

More information

Liferay Portal 4 - Portal Administration Guide. Joseph Shum Alexander Chow Redmond Mar Jorge Ferrer

Liferay Portal 4 - Portal Administration Guide. Joseph Shum Alexander Chow Redmond Mar Jorge Ferrer Liferay Portal 4 - Portal Administration Guide Joseph Shum Alexander Chow Redmond Mar Jorge Ferrer Liferay Portal 4 - Portal Administration Guide Joseph Shum Alexander Chow Redmond Mar Jorge Ferrer 1.1

More information

Telerik Corp. Test Studio Standalone & Visual Studio Plug-In Quick-Start Guide

Telerik Corp. Test Studio Standalone & Visual Studio Plug-In Quick-Start Guide Test Studio Standalone & Visual Studio Plug-In Quick-Start Guide Contents Create your First Test... 3 Standalone Web Test... 3 Standalone WPF Test... 6 Standalone Silverlight Test... 8 Visual Studio Plug-In

More information

Mastering phpmyadmiri 3.4 for

Mastering phpmyadmiri 3.4 for Mastering phpmyadmiri 3.4 for Effective MySQL Management A complete guide to getting started with phpmyadmin 3.4 and mastering its features Marc Delisle [ t]open so 1 I community experience c PUBLISHING

More information

History...: Displays a window of Gitk, a standard commit viewer for Git.

History...: Displays a window of Gitk, a standard commit viewer for Git. Git Services Wakanda includes Git features that will help you manage the evolution of your solutions and files. These features are designed to share code as well as to handle multi developer projects and

More information

CS193P: HelloPoly Walkthrough

CS193P: HelloPoly Walkthrough CS193P: HelloPoly Walkthrough Overview The goal of this walkthrough is to give you a fairly step by step path through building a simple Cocoa Touch application. You are encouraged to follow the walkthrough,

More information

Use Default Form Instances

Use Default Form Instances Use Default Form Instances Created: 2011-01-03 Modified:2012-07-05 Contents Introduction... 2 Add Form Classes... 3 Starting Form (Home Page)... 5 Use Multiple Forms... 6 Different Ways of Showing Forms...

More information

emam and Adobe Premiere Panel Guide

emam and Adobe Premiere Panel Guide emam and Adobe Premiere Panel Guide Version 3.8 April, 2017 Notice The content in this document represents the current view of Empress Media Asset Management, LLC as of the date of publication. As Empress

More information

Dreamweaver is a full-featured Web application

Dreamweaver is a full-featured Web application Create a Dreamweaver Site Dreamweaver is a full-featured Web application development tool. Dreamweaver s features not only assist you with creating and editing Web pages, but also with managing and maintaining

More information

Salesforce Classic Mobile Guide for iphone

Salesforce Classic Mobile Guide for iphone Salesforce Classic Mobile Guide for iphone Version 41.0, Winter 18 @salesforcedocs Last updated: November 30, 2017 Copyright 2000 2017 salesforce.com, inc. All rights reserved. Salesforce is a registered

More information

Lightweight J2EE Framework

Lightweight J2EE Framework Lightweight J2EE Framework Struts, spring, hibernate Software System Design Zhu Hongjun Session 4: Hibernate DAO Refresher in Enterprise Application Architectures Traditional Persistence and Hibernate

More information

SharePoint 2010 Site Owner s Manual by Yvonne M. Harryman

SharePoint 2010 Site Owner s Manual by Yvonne M. Harryman SharePoint 2010 Site Owner s Manual by Yvonne M. Harryman Chapter 9 Copyright 2012 Manning Publications Brief contents PART 1 GETTING STARTED WITH SHAREPOINT 1 1 Leveraging the power of SharePoint 3 2

More information

Ios 7 Manual Restore From Icloud Slow >>>CLICK HERE<<<

Ios 7 Manual Restore From Icloud Slow >>>CLICK HERE<<< Ios 7 Manual Restore From Icloud Slow Learn how to stop an icloud Restore that is stuck in progress in less than a minute. the content, maybe up to a day on a slow connection and an almost full iphone,

More information

Unit 1: Working With Tables

Unit 1: Working With Tables Unit 1: Working With Tables Unit Overview This unit covers the basics of working with Tables and the Table wizard. It does not include working with fields, which is covered in Units 3 and 4. It is divided

More information

Real Application Security Administration

Real Application Security Administration Oracle Database Real Application Security Administration Console (RASADM) User s Guide 12c Release 2 (12.2) E85615-01 June 2017 Real Application Security Administration Oracle Database Real Application

More information

Oracle Financial Services Governance, Risk, and Compliance Workflow Manager User Guide. Release February 2016 E

Oracle Financial Services Governance, Risk, and Compliance Workflow Manager User Guide. Release February 2016 E Oracle Financial Services Governance, Risk, and Compliance Workflow Manager User Guide Release 8.0.2.0.0 February 2016 E65393-01 Oracle Financial Services Governance, Risk, and Compliance Workflow Manager

More information

iphone App Basics iphone and ipod touch Development Fall 2009 Lecture 5

iphone App Basics iphone and ipod touch Development Fall 2009 Lecture 5 iphone App Basics iphone and ipod touch Development Fall 2009 Lecture 5 Questions? Announcements Assignment #1 due this evening by 11:59pm Remember, if you wish to use a free late you must email me before

More information

Index. Alessandro Del Sole 2017 A. Del Sole, Beginning Visual Studio for Mac,

Index. Alessandro Del Sole 2017 A. Del Sole, Beginning Visual Studio for Mac, Index A Android applications, Xamarin activity and intent, 116 APIs in C# Activity classes, 123 Android manifest, 129 App.cs, 123 app properties, setting, 128 CreateDirectoryForPictures methods, 124 device

More information

Installing and configuring an Android device emulator. EntwicklerCamp 2012

Installing and configuring an Android device emulator. EntwicklerCamp 2012 Installing and configuring an Android device emulator EntwicklerCamp 2012 Page 1 of 29 Table of Contents Lab objectives...3 Time estimate...3 Prerequisites...3 Getting started...3 Setting up the device

More information

My First Cocoa Program

My First Cocoa Program My First Cocoa Program 1. Tutorial Overview In this tutorial, you re going to create a very simple Cocoa application for the Mac. Unlike a line-command program, a Cocoa program uses a graphical window

More information

GENESYS 6.0 Service Pack 5 7 December Description / Resolution Notes

GENESYS 6.0 Service Pack 5 7 December Description / Resolution Notes GENESYS 6.0 Service Pack 5 7 December 2018 In order to best serve our user community, Vitech releases the initial service pack 30 days after product launch, with subsequent service packs released every

More information

Relationships and Traceability in PTC Integrity Lifecycle Manager

Relationships and Traceability in PTC Integrity Lifecycle Manager Relationships and Traceability in PTC Integrity Lifecycle Manager Author: Scott Milton 1 P age Table of Contents 1. Abstract... 3 2. Introduction... 4 3. Workflows and Documents Relationship Fields...

More information

Style Report Enterprise Edition

Style Report Enterprise Edition INTRODUCTION Style Report Enterprise Edition Welcome to Style Report Enterprise Edition! Style Report is a report design and interactive analysis package that allows you to explore, analyze, monitor, report,

More information

SG Project OnePage User Guide

SG Project OnePage User Guide SG Project OnePage User Guide Simple Genius Software November 2012 Document Version 4.0.1 Table of Contents Overview...3 Introduction...3 Data Management...3 Key Concepts...3 12-by-12 Project Management...

More information

AppsAudit. User s Guide. Software Version 7.0

AppsAudit. User s Guide. Software Version 7.0 AppsAudit User s Guide Software Version 7.0 2005 Logical Apps All rights reserved. Printed in USA. Restricted Rights Legend This software and associated documentation contain proprietary information of

More information

4. CONTAINER DATABASE OBJECT ORIENTED DESIGN

4. CONTAINER DATABASE OBJECT ORIENTED DESIGN 32 4. CONTAINER DATABASE OBJECT ORIENTED DESIGN We propose an Object-oriented design for the Container Database. The abstraction itself is not necessarily dependent on OO technologies nor do we claim it

More information